1

我正在尝试匹配整个字符串中除垃圾值之外的所有内容。我尝试使用的模式是:

    ^.*(?!\w|\s|-|\.|[@:,]).*$

我一直在 regexPlanet 上测试模式,这似乎与整个字符串匹配。我使用的输入字符串是:

    Vamsi///#k03@g!!!l.com 123**5

我怎样才能让它只匹配除模式之外的所有内容,我想用空格或我选择的特殊字符替换任何匹配的字符串。

4

1 回答 1

8

所写的模式应该与整个字符串匹配。

^- 字符串的开头。
.*- 零个或多个任何字符。
(?!\w|\s|-|\.|[@:,])- 某些角色的负面预测。
.*- 零个或多个任何字符。
$- 字符串结束。

如果您只想匹配不是提供的字符之一的字符,请简单地尝试:

[^-\w\s.@:,]

[^...]是一个否定字符类,它将匹配括号中未提供的任何字符。有关更多信息,请参阅

测试

于 2013-09-18T05:35:30.897 回答