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

求帮忙看看这一验证登录名的正则表达式
合法的登录名应该由a-z的小写英文字母、0-9的数字或下划线组成,登录名长度应在4-25个字符之间,但是注意不能全部为下划线组成
试了好久,想用js的函数直接验证了不能全部为下划线的这种状况,之后再用正则验证其他情况,但是感觉不妥。想问下大牛们知道如何写这个正则。
------解决方案--------------------
<script type="text/javascript">
var data = [
'fajskdf',
'123',
'__123fsdf__',
'____'
];
var re = /^(?!_+$)[a-z\d_]{4,25}$/;

for(var i = 0, l = data.length; i < l; i++){
alert( re.test(data[i]) );
}

</script>