【问题标题】:Split a string into a List<string>将字符串拆分为 List<string>
【发布时间】:2014-07-10 07:26:52
【问题描述】:

我正在尝试将string 拆分为List&lt;string&gt;。我有这个字符串:

string myData = "one, two, three; four, five, six; seven, eight, nine";

我希望填充的字符串列表看起来像:

one two three
four five six
seven eight nine

意味着我必须删除逗号(,)和分号(;),例如列表的第一行,第二列将是两个(没有逗号,分号或空格)。

我知道我可以使用.Split

string[] splittedArray = myData.Split(';').ToArray();

这应该会产生如下结果:

one, two, three,
four, five, six,
seven, eight, nine

如何删除逗号(,)并以该格式将其放入列表中?

【问题讨论】:

  • 您可以使用Replace() 将逗号替换为空。

标签: c# arrays list split


【解决方案1】:
myData.Replace(",", String.Empty).Split(';').ToList();

【讨论】:

  • 对空字符串使用String.Empty。你知道,以防万一一个空字符串看起来会有所不同。 ;-)
【解决方案2】:

试试这个

 string myData = "one, two, three; four, five, six; seven, eight, nine";
                string[] splittedArray = myData.Replace(",", "").Split(';').ToArray();
                List<string> list = splittedArray.ToList();

【讨论】:

    【解决方案3】:
    string[] splittedArray = myData.Split(';')
                            .Select(x => x.Replace(",","")
                            .ToArray();
    

    或者:

    string[] splittedArray = myData.Split(';')
                            .Select(x => string.Join(" ", x.Split(','))
                            .ToArray();
    

    【讨论】:

      【解决方案4】:

      多用一个Split

      var splittedArray = myData.Split(';').Select(s => s.Split(',').ToArray()).ToArray();
      

      所以splittedArray[0][1] 将是two

      【讨论】:

        【解决方案5】:

        试试这个:

         string myData = "one, two, three; four, five, six; seven, eight, nine";
         List<string> list = myString.Replace(", ", " ").Split(';').ToList();
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-10-17
          • 2012-03-05
          • 1970-01-01
          • 1970-01-01
          • 2021-06-08
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多