我正在尝试查找格式为 abc1234 的字符串。我可以比较每个索引处的字符是字母还是数字,然后得出结果。而是为模式匹配而写,但未能成功。有人可以知道我要去哪里吗?
var clid = "mxv4013" ;
if(clid.match("/[a-z]{3}(?=[0-9]{4})/i") != null){
alert("success") ;
}
谢谢。
最佳答案
您不需要引号,JavaScript具有正则表达式文字:
var clid = "mxv4013" ;
if(clid.match(/[a-z]{3}(?=[0-9]{4})/i)){
alert("success") ;
}
您还可以删除
!= null
检查-match
成功返回真值,失败返回假值。此外,前瞻有点奇怪,您可以使用/[a-z]{3}\d{4}/i
,或者使用/^[a-z]{3}\d{4}$/i
来验证整个字符串并避免部分匹配。