How do I replace multiple spaces with a single space in C#?

前端 未结 24 1435
面向向阳花
面向向阳花 2020-11-22 06:37

How can I replace multiple spaces in a string with only one space in C#?

Example:

1 2 3  4    5

would be:

1 2 3 4 5         


        
24条回答
  •  一生所求
    2020-11-22 07:11

    I just wrote a new Join that I like, so I thought I'd re-answer, with it:

    public static string Join(this IEnumerable source, string separator)
    {
        return string.Join(separator, source.Select(e => e.ToString()).ToArray());
    }
    

    One of the cool things about this is that it work with collections that aren't strings, by calling ToString() on the elements. Usage is still the same:

    //...
    
    string s = "     1  2    4 5".Split (
        " ".ToCharArray(), 
        StringSplitOptions.RemoveEmptyEntries
        ).Join (" ");
    

提交回复
热议问题