类似于:How to split String with some separator but without removing that separator in Java?
我需要拿“Hello World”并获得[“Hello”,“”,“World”]
答案 0 :(得分:16)
答案 1 :(得分:1)
你可以使用正则表达式,虽然它可能是一种过度杀伤力:
StringCollection resultList = new StringCollection();
Regex regexObj = new Regex(@"(?:\b\w+\b|\s)");
Match matchResult = regexObj.Match(subjectString);
while (matchResult.Success) {
resultList.Add(matchResult.Value);
matchResult = matchResult.NextMatch();
}
答案 2 :(得分:1)
如果你只分开单词边界,你会得到一些非常接近你要求的东西。
string[] arr = Regex.Split("A quick brown fox.", "\\b");
arr [] = {“”,“A”,“”,“quick”,“”,“brown”,“”,“fox”,“。” }