Skip to main content

特殊正则关键字

正向先行断言

(?=...): 匹配满足后面断言的字符,但不包括断言的字符。

const r = /abc(?=\d)/g;
r.test('abc1') // true
r.test('abc') // false

负向先行断言

(?!...): 匹配不满足后面断言的字符,但不包括断言的字符。

正向后行断言

(?<=...): 匹配满足前面断言的字符,但不包括断言的字符。

负向后行断言

(?<!...): 匹配不满足前面断言的字符,但不包括断言的字符。