Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 不允许在正则表达式中使用以下字符:~%^*=[{}]|<&燃气轮机;_Regex_Regex Negation - Fatal编程技术网

Regex 不允许在正则表达式中使用以下字符:~%^*=[{}]|<&燃气轮机;

Regex 不允许在正则表达式中使用以下字符:~%^*=[{}]|<&燃气轮机;,regex,regex-negation,Regex,Regex Negation,我正在使用这个正则表达式: ^(?!.*&#.*)[a-zA-Z0-9!@_'?., `#$&()-\\\\/:"]*$ 但它接受以下字符:*=+[; 我如何禁止它们?我尝试添加此(?!*(~%^*=+[{}]|”),但它不起作用!请确保在那里转义- ^(?!.*&#.*)[a-zA-Z0-9!@_'?., `#$&()\\-\\\\/:"]*$ ^^ 您使用的语言/库/工具是什么?我已经编

我正在使用这个正则表达式:

^(?!.*&#.*)[a-zA-Z0-9!@_'?., `#$&()-\\\\/:"]*$
但它接受以下字符:
*=+[;

我如何禁止它们?我尝试添加此
(?!*(~%^*=+[{}]|”)
,但它不起作用!

请确保在那里转义
-

^(?!.*&#.*)[a-zA-Z0-9!@_'?., `#$&()\\-\\\\/:"]*$
                                   ^^

您使用的语言/库/工具是什么?我已经编辑了您的正则表达式以更好地显示。请检查它们并确保我并没有引入任何错误。看起来您需要转义正则表达式中的一些字符(如此之多,以至于我无法真正说出您的字面意思)。还有HTML实体,如
&;
"
在这样的字符类中没有任何意义。我也很困惑,因为您的反向前瞻不允许
&;
,但您在正则表达式中也将其作为允许的字符类。@MikeBrant似乎允许
&
但不允许子字符串
&
@JohnKugelman我的评论是ref编辑之前的原始帖子中有HTML实体。我相信在实际正则表达式中应该只有两个反斜杠。这些额外的内容是为了使它们正确显示,并且应该被删除,就像HTML实体一样。在正则表达式中,连字符和t之前应该只有一个反斜杠之后是wo。添加了4个额外的反斜杠使其工作,因为它不工作可能是因为我使用了配置文件Thank@JohnKugelman。这是我的问题!我添加了这个\\-现在它不允许其他字符!