【问题标题】:How to split string with 1-many spaces and place words in an array如何用 1 个空格分割字符串并将单词放在数组中
【发布时间】:2014-02-23 23:02:39
【问题描述】:

正如标题所说,

我如何分割一个包含 1-* 个空格的字符串,并将每个单词放入一个数组中

现在我正在使用Split(' '),它适用于单个空格,但是当涉及多个空格时会导致问题

这是我的示例字符串:

0x886fe248 ElanTPCfg.exe 1132 2492 0 -------- 1 0 2014-01-20 09:31:10 2014-01-20 09:31:10

在这个例子中,我只能得到十六进制数字和可执行文件名,而其他的根本没有读取

【问题讨论】:

    标签: c# split formatting space


    【解决方案1】:
    void Main()
    {
        string s = "0x886fe248 ElanTPCfg.exe          1132   2492      0 --------      1      0 2014-01-20 09:31:10  2014-01-20 09:31:10";
        Console.WriteLine (s.Split(new[]{' '}, StringSplitOptions.RemoveEmptyEntries));
    }
    

    生产:

    【讨论】:

    • 谢谢,这个解决方案很有魅力,也感谢您提供的图片,它可以帮助未来的用户 =)
    【解决方案2】:

    您可以使用StringSplitOptions.RemoveEmptyEntries

    var output = input.Split(new [] { " " }, StringSplitOptions.RemoveEmptyEntries);
    

    【讨论】:

    • 这就像一个魅力 =) 但有没有办法不删除我的数组?我需要它来检查原因,
    【解决方案3】:

    你也可以使用Regex.Split:

    string s = @"x886fe248 ElanTPCfg.exe          1132   2492      0 --------      1      0 2014-01-20 09:31:10  2014-01-20 09:31:10";
    string[] strArr = Regex.Split(s, @"\s+");
    

    \s+ 是一个或多个空白字符。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-18
      • 1970-01-01
      • 1970-01-01
      • 2013-06-29
      • 2020-05-16
      • 1970-01-01
      • 2012-04-22
      相关资源
      最近更新 更多