我使用以下代码删除 字母字符,数字,问号以外的任何内容,感叹号,期间,括号,逗号&的连字符:
MsgBox(System.Text.RegularExpressions.Regex.Replace("hello to you's! My # is (442) 523-5584. @$%^*<>{}[]\|/?,+-=:;`~", "[^A-Za-z0-9]", ""))
我想出了这个: hellotoyousMy#is4425235584
它应该是这样读的:你好!我的#是(442)523-5584。?,
答案 0 :(得分:1)
在正则表达式中添加空格和其他符号:
MsgBox(System.Text.RegularExpressions.Regex.Replace("hello to you's! My # is (442) 523-5584. @$%^*<>{}[]\|/?,+-=:;`~", "[^A-Za-z0-9 \(\)\!\.,\-\?]", ""))
答案 1 :(得分:1)
只需将所有字符添加到否定字符类中(记下空格字符!):
MsgBox(System.Text.RegularExpressions.Regex.Replace("hello to you's! My # is (442) 523-5584. @$%^*<>{}[]\|/?,+-=:;`~", "[^A-Za-z0-9 ?!.(),#-]+", ""))
(我还在你的正则表达式中添加了一个重复的+
,因此它可以一次性替换连续的不允许的字符)
答案 2 :(得分:1)
Regex.Replace("your text", "[^A-Za-z0-9 ?!.(),-]+", "")
它[^ A-Za-z0-9?!。(), - ] +会一个接一个地抓住所有不需要的字符并用“”替换它们