我正在尝试编写一个reg表达式来查找长度为5的字符串中重复3-5次的11个不同的no /字符的匹配。
例如:string-“1112a”。这里111连续重复三次,所以这将返回true。
例如:string-“11b2a”;所以这里b将表现为没有1.这意味着我们有3个1。这将返回true。
更多例子:
“22300”应该返回false。 “22a13”应该返回false。 “44b44”应该返回true。这里b是通配符,如4。
有人请帮帮我。 提前谢谢。
答案 0 :(得分:1)
使用捕获组([0-9ab])
和反向引用\1
(此匹配与先前组1匹配的任何内容)。
Javascript示例:
/([0-9ab])(\1|b){2,4}/.test('1112a') // true
/([0-9ab])(\1|b){2,4}/.test('11b2a') // true
/([0-9ab])(\1|b){2,4}/.test('22299') // true
/([0-9ab])(\1|b){2,4}/.test('22300') // false
/([0-9ab])(\1|b){2,4}/.test('22a13') // false
/([0-9ab])(\1|b){2,4}/.test('44b44') // true