仅在第一个由多个空格分隔的单词后拆分字符串

时间:2017-06-28 15:03:23

标签: c#

我想在第一个单词之后拆分一个字符串,这个单词有两个以上的空格。例如:

string myString = "AAAA AAA DDD    BBBB BBB BBB        CCCCCCCC";

我想把它拆分成这些:

"AAAA AAA DDD"   
"BBBB BBB BBB        CCCCCCCC"

请帮忙。

2 个答案:

答案 0 :(得分:5)

Substring是最简单的方法:

string myString = "AAAA AAA DDD    BBBB BBB BBB        CCCCCCCC";
int splitIndex = myString.IndexOf("  ");
if (splitIndex > 0)
{
    Console.WriteLine(myString.Substring(0, splitIndex).Trim());
    Console.WriteLine(myString.Substring(splitIndex).Trim());
}
else
    throw new FormatException();

答案 1 :(得分:0)

另一种选择是使用CRAN MonetDBlite documentation

string myString = "AAAA AAA DDD    BBBB BBB BBB        CCCCCCCC";   
Regex searchTerm = new Regex("[ ]{2,}", RegexOptions.None);


var splitedData = searchTerm.Replace(myString, "|").Split(new string[]{"|"},StringSplitOptions.RemoveEmptyEntries);

foreach(var d in splitedData)
{
    Console.WriteLine("{0}", d);
}

结果:

AAAA AAA DDD
BBBB BBB BBB
CCCCCCCC

我的解决方案基于:Regex