这是正则表达式:
^[^~^\\/&$-+]*$
这是测试字符串:
a(b
即使(
没有出现在黑名单中,也会返回NO匹配。这是没有意义的。谁知道为什么?
答案 0 :(得分:1)
您必须将短划线放在角色类的末尾:
更改自:
^[^~^\/&$-+]*$
^---- Here the dash works as a range instead of a single character
要
^[^~^\/&$+-]*$
^--- Here works as the single "-" character
顺便说一句,正如Mr. Lama在他的评论中指出的那样你也可以像这样逃避破折号:
^[^~^\/&$\-+]*$
^-- escaped here