我有一个多语言网站(中文和英文)。
我喜欢在 javascript 中验证文本字段(名称字段)。到目前为止我有以下代码。
var chkName = /^[characters]{1,20}$/;
if( chkName.test("[name value goes here]") ){
alert("validated");
}
问题是,/^[characters]{1,20}$/ 只匹配英文字符。是否可以匹配任何(包括 unicode)字符?我曾经使用以下正则表达式,但我不想在每个字符之间留有空格。
/^(.+){1,20}$/
你可以看看JavaScript + Unicode 正则表达式 https://stackoverflow.com/questions/280712/javascript-unicode并进行一些研究以准确找到您想要允许的字符范围:
See Unicode 中汉字的完整范围是多少? https://stackoverflow.com/questions/1366068/whats-the-complete-range-for-chinese-characters-in-unicode
阅读完这两篇文章和一些额外的研究后,您应该能够找到合适的值来完成类似的事情:/^[-'a-z\u4e00-\u9eff]{1,20}$/i
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)