将字符串拆分为c#中没有分隔符的字符串数组

时间:2016-04-09 14:20:10

标签: c# .net arrays string

我想知道为什么没有简单的方法可以做到这一点。

我只想将字符串拆分为字符串数组而不指定任何分隔符。即G。我的输入为“你好”,我希望结果为“H”,“e”,“l”,“l”,“o”i。即一个字符串数组。

有一个直接的方法,用于将字符串拆分为字符数组(.ToCharArray()),然后可以转换为字符串数组,但没有任何东西可以直接给我字符串数组。

或者我甚至不能这样做:

string[] myStringArray = myString.Split(''); // Compile error

2 个答案:

答案 0 :(得分:4)

你可以使用一点Linq来实现你的目标

string[] myStringArray = myString.Select(x => x.ToString())
                                 .ToArray();

答案 1 :(得分:2)

如果您需要处理组合字符和代理项对,您应该使用StringInfo类来分割字符串:

var str = "";
var chars = new List<string>();
var tee = StringInfo.GetTextElementEnumerator(str);
while (tee.MoveNext())
    chars.Add(tee.GetTextElement());