我需要阻止用户使用与拉丁语(又名英语)不同的字母输入文字。
我正在使用基于正则表达式的以下函数,但我有一些问题:
aaaaффффф
我使用一个简单的if
来解决第一点,无论如何,如果正则表达式也会照顾这个案例会很好
第二点是我更关心的事情。
function validate_latin(v){
var regex = new RegExp("[\u0000-\u007F\u0080-\u00FF]");
if (v != '') {
return regex.test(v);
}
return true;
}
P.S。 我用谷歌搜索并发现了其他类似的问题,但没有一个是完整的或涵盖这个场景
答案 0 :(得分:0)
如果您的拉丁子模式适合您,解决方案很简单。 ^
和$
锚点会阻止部分匹配(整个字符串/行必须匹配),+
,这意味着一个或多个'不允许空字符串:
/^[\u0000-\u007F\u0080-\u00FF]+$/