4

我有很多看起来像这样的字符串:

current            affairs

我想让字符串成为:

current affairs

我尝试使用Trim(),但它不会完成这项工作

4

6 回答 6

11

正则表达式可以完成这项工作

string_text = Regex.Replace(string_text, @"\s+", " ");
于 2012-04-18T10:25:51.237 回答
6

您可以为此使用正则表达式,请参阅Regex.Replace

var normalizedString = Regex.Replace(myString, " +", " ");

如果您想要所有类型的空格,请使用@"\s+"而不是" +"只处理空格。

var normalizedString = Regex.Replace(myString, @"\s+", " ");
于 2012-04-18T10:25:38.660 回答
0

使用正则表达式。

yourString= Regex.Replace(yourString, @"\s+", " ");
于 2012-04-18T10:27:12.710 回答
0

您可以使用正则表达式:

public string RemoveMultipleSpaces(string s) 
{
    return Regex.Replace(value, @"\s+", " ");
}

后:

string s = "current            affairs  ";
s = RemoveMultipleSpaces(s);
于 2012-04-18T10:27:28.780 回答
0

在这里使用正则表达式是一种方式,

System.Text.RegularExpressions.Regex.Replace(input, @”\s+”, ” “);

这将删除所有空白字符,包括制表符、换行符等。

于 2012-05-22T11:37:15.773 回答
-1

首先,您需要拆分整个字符串,然后将修剪应用于每个项目。

  string [] words = text.Split(' ');
  text="";
  forearch(string s in words){
    text+=s.Trim();
  }
  //text should be ok at this time
于 2012-04-18T10:29:39.083 回答