var string="CMNET$4sS3$089sS";
var exp=/^([A-Z]{4,10})\$([0-9]{1,8})\$([0-9]{1,8})$/
var reg=string.match(exp);
这段匹配不了。能帮我看看嘛
[quote]$([0-9]{1,8})\$([0-9]{1,8})$[/quote]
后面这两段只能匹配数字,而字符串里有sS这些字符,所以匹配不了
加上匹配字符的就可以了
[code="java"]var exp=/^([A-Z]{4,10})\$([0-9a-zA-Z]{1,8})\$([0-9a-zA-Z]{1,8})$/ [/code]
楼上正解,
或者把
var string="CMNET$4sS3$089sS";
改为
var string="CMNET$43$089";
把$后面的字母去了,就可以了
[quote]You:var exp=/^([A-Z]{4,10})\$([0-9a-zA-Z]{1,8})\$([0-9a-zA-Z]{1,8})$/
My:var exp=/^([A-Z]{4,10})\$([A-Za-z0-9]{1,8})\$([A-Za-z0-9]{1,8})$/
两者有区别吗?我用下面这个去验证的时候就无法匹配[/quote]
没啥区别呀,你的表达式在我这边也能成功执行呀。