看不出问题<script>
var reg1=new RegExp("^[A-Za-z0-9]{4,20}$");
var reg2 = reg1;
var str = "2A3c";if (reg1.test(str))
alert("Reg1 成功");
else
alert("Reg1 失败");if (reg2.test(str))
alert("Reg2 成功");
else
alert("Reg2 失败");
</script>
var reg1=new RegExp("^[A-Za-z0-9]{4,20}$");
var reg2 = reg1;
var str = "2A3c";if (reg1.test(str))
alert("Reg1 成功");
else
alert("Reg1 失败");if (reg2.test(str))
alert("Reg2 成功");
else
alert("Reg2 失败");
</script>
<script>
function bzscs(){var reg1=new RegExp("^[A-Za-z0-9]{4,20}$");
var reg2 = reg1;
var str = "2A3c";if (reg1.test(str))
alert("Reg1 成功");
else
alert("Reg1 失败");if (reg2.test(str))
alert("Reg2 成功");
else
alert("Reg2 失败");
}
</script><BUTTON onclick="bzscs()">chk</BUTTON>
-
你有问题的代码是什么?
var reg2=new RegExp("^[a-z]*$","g");
function test()
{
var reg=reg2;
var str=str_text.value;
if (reg.test(str))
result.value="成功";
else
result.value="失败";
}
</script> 测试表达式:
<input name="str_text" type="text" id="str_text"> <br> <br>
测试结果为:
<input name="result" type="text" id="result"> <br> <br> <input name="btn" type="button" id="btn" value="开始测试" onclick="test()">
在脚本中使用正则表达式模式匹配,首先腰设定匹配模式,方法有如下两种
(1)rgExp=/pattern*/[flags*]
(2)rgExp=new RegExp("pattern",["flags"])
注意:
a.后者模式中的转义字符“\”需要用“\\”表示,用以抵消JS中转义字符"\"的意义,否则JS首先作为自己的转义概念来解释"\"后的字符。
b.flags标识有以下几个(至JScript 5.5版本)
g:设定当前匹配为全局模式
i:忽略匹配中的大小写检测
m:多行搜索模式