/*
下面的函数当中其中[\\u4e00-\\u9fa5]我想让他只包括汉字,
可是现在它也包括单引号和一些别特殊字符,请问一下应当如何修改啊?
*/function isChinese(obj)//验证1-5个中文字符串
{
if(obj.value == "") return true;
// 正则表达式对象
var re = new RegExp("^([\\u4e00-\\u9fa5]){1,5}$", "");
// 验证是否刚好匹配
var yesorno = re.test(obj.value);
if(yesorno)
{
return true;
}
else
{
return false;
}
}
把逗号都去掉试试/^[^\u0000-\u4dff\u3000-\u3002\u300a\u300b\u300e-\u3011\u2014\u2018\u2019\u201c\u201d\u2026\u203b\u25ce\uff01-\uff5e\uffe5\u9fa6-\uffff]+$/
<HEAD>
<title>date2 </title> <script language="javascript" type="text/javascript"> var re=/^[^\u0000-\u4dff\u3000-\u3002\u300a\u300b\u300e-\u3011\u2014\u2018\u2019\u201c\u201d\u2026\u203b\u25ce\uff01-\uff5e\uffe5\u9fa6-\uffff]+$/
function a(str){
alert(re.test(str));
}
</script>
</HEAD>
<body>
<input type="text" onblur="a(this.value)">
</body>
</HTML>我测试的都挺好的啊...
测试过:
ss false
、撒 false
撒播 true
`撒 false
不知道你怎么搞得,反正我这里不匹配还有你那个括号是多余的
/*
楼上的事实证明一切,请看下面输出true为什么?
function userName(obj)//必须为:汉字或者a-z、0-9、-_,且长度大于2小于16
{
var re = new RegExp("^(([\\u4e00-\\u9fa5])|([A-Za-z0-9_-])){2,15}", "");
var yesorno = re.test(obj);
if(yesorno)
{
return true;
}
else
{
return false;
}
}
alert(userName("你好'"));
*/
function userName(obj)//必须为:汉字或者a-z、0-9、-_,且长度大于2小于16
{
var re = new RegExp("^(([^\u0000-\u4dff\u3000-\u3002\u300a\u300b\u300e-\u3011\u2014\u2018\u2019\u201c\u201d\u2026\u203b\u25ce\uff01-\uff5e\uffe5\u9fa6-\uffff])|([A-Za-z0-9_-])){2,15}", "");
var yesorno = re.test(obj);
if(yesorno)
{
return true;
}
else
{
return false;
}
}
alert(userName("你好'"));
{
var re = new RegExp("^[^\u0000-\u4dff\u3000-\u3002\u300a\u300b\u300e-\u3011\u2014\u2018\u2019\u201c\u201d\u2026\u203b\u25ce\uff01-\uff5e\uffe5\u9fa6-\uffff]{2,15}$");
var yesorno = re.test(obj);
if(yesorno)
{
return true;
}
else
{
return false;
}
}
alert(userName("你好'"));
就你这个函数 你用 "'ABC" 测一下 肯定是false
你测试的什么啊
// 这样的才对!!!
function userName(obj)//必须为:汉字或者a-z、0-9、-_,且长度大于2小于16 |[A-Za-z0-9_\\-]
{
var re = new RegExp("^([\\u4e00-\\u9fa5]|[A-Za-z0-9_-]){2,15}$", ""); //仔细看看这个正则,告诉你少用括号了还用这么多
return re.test(obj);
}