2014-10-30 1883 views
2

我目前使用这个表达式正则表达式为一个或多个空格,制表符,换行符

currentLine = Regex.Replace(currentLine, " {1,} \t \n", @" "); 

它似乎并不奏效。我需要一个正则表达式,它用一个空格替换空格,换行符,标签。有没有其他的空间角色,我应该记住?

+0

http://stackoverflow.com/questions/ 206717 /我怎么做替换多空间与单个空间在C中 – Sybren 2014-10-30 18:48:14

+0

您的正则表达式将寻找一个或多个空间,然后选项卡然后空格然后一个新的l国家统计局。如果你想匹配其中的一个,你应该使用or(|)运算符。像“\ s + | \ t + | \ n +” – Learner 2014-10-30 18:51:16

回答

5

对于所有空白使用:

\s+ 

特定的字符,你可以使用:

[ \t\n]+ 

其他空格字符是\r\f

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

+为1以上且\s为 “空白” 的简写。

+1

这是什么? – 2014-10-30 18:56:51

+1

需要注意的是'\ s'只能在'c#'中匹配'Unicode'。这可能是也可能不是问题。 – 2014-10-30 18:57:40

+1

@EvaldasB,@用于:http://stackoverflow.com/questions/556133/whats-the-in-front-of-a-string-in-c – 2014-10-30 19:05:40

相关问题