正则表达式 - 用制表符替换多个空格

时间:2011-12-10 23:34:55

标签: c# regex

我正在使用下面的代码示例,我想要做的是用1 \ t替换所有多个空格。

所以

"I am    having fun             working  on       Regex"

返回

"I am\thaving fun\tworking\ton\tRegex"  

当前代码:

RegexOptions options = RegexOptions.None;
Regex regex = new Regex(@"[ ]{2,}", options);     
tempo = regex.Replace(tempo, @" ");

谢谢!

2 个答案:

答案 0 :(得分:6)

这样做:

resultString = Regex.Replace(subjectString, " {2,}", @"\t");

您在尝试中忘记了\t

答案 1 :(得分:3)

在您的示例中,您将使用单个行替换多个空格:

tempo = regex.Replace(tempo, @" ");

您想要的是替换为标签字符\t

tempo = regex.Replace(tempo, "\t");

请注意,我在调用@时从字符串中删除了Replace字符,否则@"\t"被解释为“字符串反斜杠t”而不是制表符。