大家帮我看看这个正则表达式 /[!@#$%^&*()~`+';:",./<>?{}()-]/

大家帮我看看这个正则表达式 /[!@#$%^&*()~`+';:",./<>?{}()-]/ 有什么错误?我都搞了两天了找不出来是哪儿错了。

原句:
// patrn=/[']+[!]?[@]+[;]+[:]+[+]+[=]+[-]+[#]+[[]+[]]+[%]+[^]+[&]+[*]+[(]+[)]+[~]+[`]+[]+[]+[?]+[<]+[>]+[/]+[,]+["]+[.]+[{]+[}]+[>]+[<]+[\f]+[\n]+[\r]+[\t]+[\v]+/;

var patrn= /[@#$%^&*()~'+'/<>?{}-]/;

/也得转义
[code="js"]
/[!@#\$%^&*()~`+';:",.\/<>\?{}()-]/
[/code]
这样就好了

( [ { \ ^ $ | ) ? * + .
是JS正则里的元字符 需要用"\"转义
所以你的正则应该是
/[!@#\$%^&*()~`+';:",./<>\?{}()-]/