【问题标题】:split string with trimmed whitespace C#用修剪过的空格 C# 分割字符串
【发布时间】:2014-04-10 00:53:53
【问题描述】:

我希望能够使用 ',' 作为分隔符拆分字符串,并且只修剪结果拆分两侧的空白。例如:

string str = "The, quick brown, fox";
string[] splitsWithTrim = str.split(',', also trim whitespace somehow?);
foreach (string s in splitsWithTrim)
    Console.WriteLine(s);

//output wanted:
//The
//quick brown
//fox

【问题讨论】:

    标签: c# string split removing-whitespace


    【解决方案1】:

    你可以在Split之后使用LINQ

    string str = "The, quick brown, fox";
    string[] splitsWithTrim = str.Split(',').Select(x => x.Trim()).ToArray();
    

    或者您可以将分隔符更改为 ", "(逗号 + 空格)。这也适用于这种情况,因为每个 comma 之后只有一个 white-space

    string[] splitsWithTrim = str.Split(new[] { ", " }, StringSplitOptions.None);
    

    【讨论】:

    • 如果您可以容忍省略空条目,您也可以使用:string[] splitsWithTrim = str.Split(", ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
    【解决方案2】:

    对于 Non-Linq 解决方案,您只需在解决方案中添加额外的一行代码

    string str = "The, quick brown, fox";
    string[] splitsWithTrim = str.split(',', also trim whitespace somehow?);
    foreach (string s in splitsWithTrim)
    {
        Console.WriteLine(s.Trim());
    }
    

    【讨论】:

      【解决方案3】:

      另一种方式:

      string str = "The, quick brown, fox"; 
      string[] result = Regex.Split(str, @"\s*,\s*");
      

      【讨论】:

        猜你喜欢
        • 2012-09-22
        • 2014-12-13
        • 2013-08-02
        • 2023-04-02
        • 2010-09-24
        • 1970-01-01
        • 1970-01-01
        • 2013-10-11
        相关资源
        最近更新 更多