我正在尝试用空格替换除字母,数字和一些特殊字符之外的所有字符。这是我正在使用的代码行:
documentText = Regex.Replace(documentText, @"^((?![a-zA-Z0-9%\-\@\$&']).*)$", " ");
它不起作用。我在这样的示例文本上测试了它:
[]\^|+*(){} ~#%=/<>-!@$&_'",.?;:
this should stay
它会删除所有内容。
答案 0 :(得分:3)
使用以下正则表达式:
[^a-zA-Z0-9%\-@$&']
使用^
反转字符类,这对于您正在寻找的内容而言是完美的,而不使用否定前瞻。
答案 1 :(得分:1)
你正在搜索。*这意味着0或者更多的任何角色......这就是为什么它会删除所有内容。