非常诡异的 正则表达式 失效问题..... A-Z 可以匹配小写字母, 求助...
非常诡异的 正则表达式 失效问题..... A-Z 可以匹配小写字母, 求助...
不知各位是否用过
formValidator-4.1.3.min.js
这个 JQ 校验插件,
在这个插件中, 用
.regexValidator({
regExp:"^[A-Z][a-z0-9_]+$",
dataType:"string",
onError:"内容格式不正确..."
});
这段来做正则表达式校验, 基本就是
JavaScript
格式的代码.
相信大家也看到了
regExp:"^[A-Z][a-z0-9_]+$",
这句,
字面意思来看, 就是 "大写字母开始, 后边由小写字母,数字, 下划线 组成, 比如: Zero_1",
但这个表达式的问题在于, 无论如何, 用小写字母开头, 也能匹配通过, 比如 "aa" 也提示正确!
为何啊 !!
PS: 这段 JQ 代码写法基本是正确的, 因为同一个模子写别的表达式就正常, 唯独这个大小写出问题 !
正则表达式
------解决方案--------------------formValidator里对regExp的限定是什么?估计在那个地方设置了大小写不敏感。象这样的语句new RegExp(str,"i");
------解决方案--------------------http://www.yhuan.com/doc/regexValidator.html
param
(默认: "i") 属性名:附加参数。 值有以下几种类型:
g:代表可以进行全局匹配。
i:代表不区分大小写匹配。
m:代表可以进行多行匹配。
可以任意组合,当然也可以不加参数
默认是不区别大小写的