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