姓名正则
/^[\u4e00-\u9fa5]{1,6}(·[\u4e00-\u9fa5]{1,6}){0,2}$/
匹配1到6个中文中间允许"·"+1到6个中文出现0到2次。主要为了考虑少数民族的名字 例如:买买提伊敏·伊敏诺夫
/^[\u4e00-\u9fa5]{1,6}(·[\u4e00-\u9fa5]{1,6}){0,2}([,,][\u4e00-\u9fa5]{1,6}(·[\u4e00-\u9fa5]{1,6}){0,2})*$/
可以匹配多个名字 例如:在,在·在,住宿费
因为项目需要用到姓名正则匹配,网上找了好多都发现不合适。找了个差不多的,然后修改了下。
将正则复制过去就好,需要去掉头尾的/ / 体验==》 http://tool.oschina.net/regex/
测试用例
输入6个中文,成功
输入8个中文,失败
输入6个中文加点,失败
输入6个中文加点加中文,成功
输入2个中文加数字,失败
输入2个中文加特殊字符,失败
js代码例子
var regexp=/^[\u4e00-\u9fa5]{1,6}(·[\u4e00-\u9fa5]{1,6}){0,2}$/; if(!regexp.test(value)){ alert("你输入的姓名有误!"); $(this).val(""); }