日期:2014-05-16  浏览次数:20586 次

一个正则表达式问题,关于一个汉字2个字符的问题
您的昵称可以由小写英文字母、中文、数字组成,
长度4-20个字符,一个汉字为两个字符。

我用的正则表达式为var regName=/[\u4E00-\u9FA5a-z0-9]{4,20}/;
为什么中文也要4个字才能匹配呢??正确的正则应该怎么写?

------解决方案--------------------
引用:
哦,我试了一下,不是半角和全角的问题。

我给你写了一个:可以用

var regName = /([\u4E00-\u9FA5]
------解决方案--------------------
[a-z0-9]{2}){2,10}/;


还是用这个吧:var regName = /^([\u4E00-\u9FA5]
------解决方案--------------------
[a-z0-9]{2}){2,10}$/;