从字符串

问题描述:

删除的空间,我有很多的字符串看起来像这样:从字符串

current   affairs 

,我想使字符串是:

current affairs 

我尝试使用Trim(),但它赢得了”做T的工作

+2

只是为了将来参考,修剪()从一开始就删除空间并仅在字符串结束。 – Archer 2012-04-18 10:33:29

正则表达式可以做的工作

string_text = Regex.Replace(string_text, @"\s+", " "); 
+5

或者,作为一个更快的变体:'Regex.Replace(myString,“\\ s {2,}”,“”)''所以你不能自己替换单个空格。在我的测试中,差异约为30%。 – Joey 2012-04-18 10:32:57

您可以使用正则表达式的资料可以看Regex.Replace

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

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

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

使用正则表达式。

yourString= Regex.Replace(yourString, @"\s+", " "); 

您可以使用正则表达式:

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

后:

string s = "current   affairs "; 
s = RemoveMultipleSpaces(s); 

首先,你需要分割整个字符串,然后应用修剪到每个项目。

string [] words = text.Split(' '); 
    text=""; 
    forearch(string s in words){ 
    text+=s.Trim(); 
    } 
    //text should be ok at this time 

使用正则表达式这里是这样的,

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

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