正则表达式仅检测字母+数字,而不仅仅是数字
^(.*?(\b([A-Z]{2})([0-9]{7})\b)[^$]*)$
例如:
AB1234567 true
09AR30253 true
123456789 false
0912345JL true
AABBCCAAA false
答案 0 :(得分:0)
要匹配包含2个连续字母的9个字符串,其余字符只是数字,您可以使用
/^(?=.{9}$)\d*[a-zA-Z]{2}\d*$/
请参阅regex demo。
详情:
^
- 字符串开头(?=.{9}$)
- 字符串长度必须为9个字符\d*
- 零个或多个数字[a-zA-Z]{2}
- 2个字母\d*
- 零个或多个数字$
- 字符串结束。JS演示:
var strs = ['AB1234567', '09AR30253', '0912345JL', '123456789', 'AABBCCAAA'];
var rx = /^(?=.{9}$)\d*[a-zA-Z]{2}\d*$/;
for (var s of strs) {
console.log(s, "=>", rx.test(s));
}