如何将具有多个空格的字符串拆分为分隔符?

时间:2013-08-14 09:43:37

标签: c# string

我有字符串,其中一个空格不能是分隔符。但是当不止一个空格出现时,它必须充当分隔符。 e.g。

"Line 1     Component Name             Revision        Quantity   Unit"

在这个示例中,我必须在拆分后拥有5个不同的元素。如何使用字符串中的内置拆分功能实现它。 (请注意,单个出现的空格不作为分隔符)

4 个答案:

答案 0 :(得分:7)

拆分两个空格,然后修剪你可能在结果中得到的任何多余部分(如果你有奇数个空格就会出现)

List<string> splitStrings = myString.Split(new[]{"  "}, StringSplitOptions.RemoveEmptyEntries)
    .Select(s => s.Trim())
    .ToList();

答案 1 :(得分:2)

嗯,不确定这是否会涵盖你的所有情况:

var regex = new Regex("  +");
var result = regex.Split("Line 1     Component Name             Revision        Quantity   Unit");

结果:

Line 1
Component Name
Revision
Quantity
Unit

答案 2 :(得分:0)

好吧,你总是可以使用:

String newStr = str.Split("<White space><White space>");

答案 3 :(得分:0)

这里你...

String fields = "He rl  lo vjdvd    fcsd";

Pattern pattern = Pattern.compile("\\s\\s\\s*" );

String[] split = pattern.split(fields);
for (String string : split) {
    //Use values here
}