我正在一个西班牙语网站上工作,我在那个网站上进行了搜索,我们不允许在键盘上发送这些特殊字符(! @ # $ % ^ & * ( ) _ + - = [ ] \ { } | ; ,' : " ./<>?在网站的英文版本中,我们term.replace(/W|_/g," ");
java脚本中做一些类似的事情。这允许所有字母(大写和小写)和数字并过滤掉这些特殊字符。
以同样的方式,我应该如何发送所有英语/西班牙语字母,数字并排除这些字符。
将正则表达式更改为以下内容应该有效:
/[^wáÁéÉíÍóÓúÚñÑ]|_/g
或者正如MДΓΓ БДLL在评论中指出的那样:
/[^wáéíóúñ]|_/gi
字符类开头的^
否定了它,因此这可以理解为"匹配所有不在[a-zA-Z0-9_áÁéÉíÍóÓúÚñÑ]
中的字符,并匹配_
"。
作为旁注,您可以将当前的正则表达式简化为 /[W_]/g
.