我在javascript中使用以下函数,它限制了一些字符(重音和特殊)。允许用户输入以下字符:
áéíúÁÉÉÓÚ: - _çÇã~eõÃÕÕÊÊ
但我没有成功,可以帮助我吗?
注意:下面的代码是我目前不知道如何制作允许引用字符的正则表达式
我的正则表达式函数:
$('input').keyup(function() {
var $th = $(this);
$th.val($th.val().replace(/[^a-zA-Z0-9 ]/g, function(str) {
return '';
});
}));
答案 0 :(得分:2)
对这些特定字符(可在unicode-table.com上找到)使用unicode十六进制值,并将它们包含在您的字符类中。因此,例如,要允许á
和é
,您可以将表达式修改为:
/[^a-zA-Z0-9 \u00E1\u00E9]/
答案 1 :(得分:1)
如果JavaScript支持直接Unicode编程,您应该只能使用
/[áéíóúÁÉÍÓÚ:-_çÇã~eõÃÕÂÊÔ]/
由于[]
选择了一个字符(或字符范围)。