您的正则表达式中有一个隐藏的错误,下面突出显示:
有人可以详细阐述以下正则表达式吗?>
/^[a-zA-Z0-9-_=+/]{8,64}$/
据我了解
^
-声明字符串的开头
[a-zA-Z0-9
匹配A-Z,a-z,0-9]
-_=+/
我唯一了解的是它与任何字符-_=+/
]匹配>
8-64
字符长度
我已经在https://regex101.com/上运行了此正则表达式,由于+
之后的最后一个斜杠,它给出了一个错误,但由于我在javascript中使用过此正则表达式(使用Joi包),因此它工作正常,并且效果很好,您还可以测试用javascript正则表达式测试器(https://www.debuggex.com/)
我想做什么?
所以我想绕过此正则表达式来执行命令注入,例如abcdefgighj; id
,因为不允许使用;
,并且我不理解最后一部分,所以将不胜感激。]
有人可以详细说明以下正则表达式/ ^ [a-zA-Z0-9 -_ = + /] {8,64} $ /根据我的理解^-断言字符串a-zA-的开始Z0-9匹配AZ,az,0-9 -_ = + /唯一...
您的正则表达式中有一个隐藏的错误,下面突出显示:
/^[a-zA-Z0-9-_=+/]{8,64}$/ ^^^
[最有可能,正则表达式的作者打算使
-
成为有效出现的字符之一。但是,如所写,该模式包括字符9-_
的range
/^[a-zA-Z0-9_=+/-]{8,64}$/
或者,更好的是,您可以尝试转义破折号,并将其他所有内容保持原样:
/^[a-zA-Z0-9\-_=+/]{8,64}$/
您的正则表达式中有一个隐藏的错误,下面突出显示: