+ -
当前位置:首页 → 问答吧 → 一个正则表达式问题,关于一个汉字2个字符的问题

一个正则表达式问题,关于一个汉字2个字符的问题

时间:2011-12-09

来源:互联网

您的昵称可以由小写英文字母、中文、数字组成,
长度4-20个字符,一个汉字为两个字符。

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

作者: choupiling   发布时间: 2011-12-09

应该是半角和圆角的问题。

作者: soonfei   发布时间: 2011-12-09

哦,我试了一下,不是半角和全角的问题。

我给你写了一个:可以用

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

作者: soonfei   发布时间: 2011-12-09

引用 2 楼 soonfei 的回复:
哦,我试了一下,不是半角和全角的问题。

我给你写了一个:可以用

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


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

作者: soonfei   发布时间: 2011-12-09