我正在使用REGEX
并尝试匹配以下条件:
a-z, A-Z, 0-9
!@#$^*_=[]/|\,.?: -
允许<>{}"'%;()&+
不允许并且在此过程中我提出了以下正则表达式,但在某些情况下,它失败了。
/^(?=[a-zA-Z0-9~!@#$^*_=[\/]|\\,.?: -]*$)(?!.*[<>{}"'%;()&+])/
如果有专家可以根据需要验证和修改相同内容,我们将不胜感激。 谢谢你的帮助。
答案 0 :(得分:2)
如果您知道允许的内容,则无需列出不允许的内容。只需将其表示为允许的字符的字符类:
/^[a-zA-Z0-9~!@#$^*_=[\/]|\\,.?: -]*$/
答案 1 :(得分:1)
对我来说,看起来你需要这样的东西:
if (/^[\w~!@#$^*=[\]\/|\\,.?: -]$/.test(subject)) {
// Successful match
} else {
// Match attempt failed
}
\w
将匹配任何ASCII字母,数字或下划线(更紧凑)。]
和\
,它们都需要通过反斜杠进行转义。