if (isNumberString(document.form1.name.value,"1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_")!=1)
{
alert("用户名只能由字母,数字或_组成,请重新输入!");
document.form1.name.focus();
return false;
}看这个代码帮我改下。。
我要用户名只能由字母,数字,_,或中文汉字组成。。小弟急,请各位大哥,大虾们解决,分不多,
帮帮忙谢谢。

解决方案 »

  1.   

    好像不用这么弄吧,js有专门的函数(isAlpha)处理:
    /*** 检查是否由数字字母和下划线组成 ***/String.prototype.isAlpha = function() {
    return (this.replace(/\w/g, "").length == 0);
    }再给你一个,判断用户名只允许为英文,数字和汉字的混合
    var reg = /^(\w|[\u4E00-\u9FA5])*$/;
    if(arr=username.match(reg))
    {
    ti=1;
    return ture;
    }
    else
    {
    alert("用户名只允许为英文,数字和汉字的混合,\n请检查是否前后有空格或者其他符号");
    ti=0;
    return false;
    }
      

  2.   

    正则表达式
        <script type="text/javascript">        var o = /^[a-zA-Z0-9_\u4e00-\u9fa5]+$/;
            var f = o.exec("_0zZ草泥马_0河蟹");
            if (f != null) {
                alert("Match!");
            } else {
                alert("Not Match!");
            };
        </script>