删除不包含空格的非字母数字字符

时间:2010-06-07 12:12:12

标签: c# regex

我有这样的声明:

String cap = Regex.Replace(winCaption, @"[^\w\.@-]", ""); 

"Hello | World!?"转换为"HelloWorld"

但我想保留空格字符,例如:"Hello | World!?""Hello  World"

我该怎么做?

3 个答案:

答案 0 :(得分:4)

只需在你的字符集中添加一个空格,[^ \ w。@ - ]

var winCaption = "Hello | World!?";
String cap = Regex.Replace(winCaption, @"[^\w\.@\- ]", "");

请注意,您必须转义'破折号'( - )字符,因为它通常用于表示一系列字符(例如,[A-Za-z0-9])

答案 1 :(得分:1)

你去......

string cap = Regex.Replace(winCaption, @"[^\w \.@-]", "");

答案 2 :(得分:0)

试试这个:

  String cap= Regex.Replace(winCaption, @"[^\w\.@\- ]", "");
相关问题