var usernameRegex = /^([\u4e00-\u9fa5]{2,4})|([A-Za-z0-9_]{4,16})|([a-zA-Z0-9_\u4e00-\u9fa5]{3,16})$/;
这个正则表示的是4-16位字母,数字,汉字,下划线 其中两个汉字是可以注册成功的,表示4个字符
昨天修改单位需求,满足用户名注册逻辑, 4-16位字母,数字,汉字,下划线
之前的正则是这样的
var usernameRegex = /^([a-zA-Z0-9_\u4e00-\u9fa5]{4,16})$/;
看看效果
测试两个汉字,满足需求,但是没有匹配
所以这个正则是不合适的,后来修改成这个,我觉得这个正则无敌了. 网上现在搜用户名的正则,好多没有汉字的,这个包含了汉字
网友评论