(我搜索了这个问题,但只找到了足够好的解决方案,需要使用unicode插件。我不能使用它。)
我想使用以下标准验证输入字段(名字和姓氏):
. - '
(点,破折号,背景和空格)是允许的, [a-zA-Z]
不在桌面上,因为在输入重音字符时它会消失。
我从^([^0-9]*)$
开始,它能够满足上述所有条件,除了一个:它允许所有特殊字符,而不仅仅是.-'
和空格。
是否可以修改^([^0-9]*)$
,以使其符合特殊字符标准但接受所有unicode字符?
答案 0 :(得分:2)
您可以使用tf.scan
(与任何语言的任何类型的字母匹配),将其与JS \p{L}
组合。
var str1 = "aàp'èéìa skopI(989'j0.ç-' dc sAù_";
var str2 = "aàp'èéìa skopI'j.-' dc sAù";
regex = XRegExp('^[\\p{L} \'.-]+$');
console.log(regex.test(str1)); // this should return false
console.log(regex.test(str2)); // this should return true

<script src="https://cdnjs.cloudflare.com/ajax/libs/xregexp/2.0.0/xregexp-all-min.js"></script>
&#13;