有正则表达式匹配“aa”和“b-b”,但不是“a-b”?

这是一个很难表达的问题,但是有没有办法让正则表达式匹配'a-a'and 'b-b',但不是'a-b'?基本上我希望它与中间字符(例如“-”)两侧的相同字符匹配,但是该字符可以与一组字符(例如[abc])中的其他字符互换。我希望解决方案不是蛮力的,因为我想到的字符集非常大,答案应该在 javascript 中

回答

您正在寻找的模式是 /^([a-c])-1$/

您可以通过number语法引用任何捕获的组,其中number是您的组的编号,从 1 开始。

测试:

const pattern = /^([a-c])-1$/;

pattern.test('a-a'); // true
pattern.test('b-b'); // true
pattern.test('c-c'); // true
pattern.test('a-b'); // false


以上是有正则表达式匹配“aa”和“b-b”,但不是“a-b”?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>