0

我有这个正则表达式:(*UCP).*\bпроверка\b.*.它在 regex101.com ( https://regex101.com/r/9elF5c ) 上运行良好,但在 JavaScript 中却不行。

const regex = /(*UCP).*\bпроверка\b.*/
console.log(regex.test('а проверка б'))

有人可以解释一下问题是什么以及如何解决它

4

1 回答 1

0

Using(*UCP)PCRE支持的修饰符。

Javascript中的错误是因为这种语法不起作用(*括号是一个特殊的字符,*而是一个量词。

如果字符串的左右两边应该有空白边界:

.*(?<!\S)проверка(?!\S).*

const regex = /.*(?<!\S)проверка(?!\S).*/
console.log(regex.test('а проверка б'))

于 2021-08-27T08:38:29.000 回答