正则表达式删除额外的空格

时间:2015-01-13 15:59:43

标签: regex vb.net string

我有一个字符串,我想删除任何特殊字符,如〜或*等。

我正在使用正则表达式" [](?= [])| [^ -_,A-Za-z0-9] +"

然后我注意到它与特殊字符一起删除了额外的空格。例如,如果字符串之间的空格大于1,则会将其更改为单个空格。例如,如果字符串是

  ~ my test   123    456

我想要my test 123 456返回,而是获得my test 123 456

所以我改变了[ ](?=[ ])|[^-_,A-Za-z0-9 ]+ to [ ][^-_,A-Za-z0-9 ]+

但现在〜不会从字符串中删除。我得到~ my test 123 456

我使用的代码如下:

line = Regex.Replace(line, "[ ][^-_A-Za-z0-9 ]+", "").Trim()

1 个答案:

答案 0 :(得分:1)

你可以试试这个,

line = Regex.Replace(line, @"[^-,\w ]", "").Trim()

DEMO