西里尔字母 \b 的问题(JavaScript 正则表达式)
Problem with \b in cyrillic (JavaScript Regex)
我有这个正则表达式:(*UCP).*\bпроверка\b.*.
它在 regex101.com (https://regex101.com/r/9elF5c) 上运行良好,但在 JavaScript.
上运行良好
const regex = /(*UCP).*\bпроверка\b.*/
console.log(regex.test('а проверка б'))
谁能解释一下问题是什么以及如何解决
使用 (*UCP)
是 PCRE 支持的修饰符。
Javascript 中的错误是因为此语法不起作用 (*
括号是特殊字符,*
是量词。
如果字符串左右应该有空白边界:
.*(?<!\S)проверка(?!\S).*
const regex = /.*(?<!\S)проверка(?!\S).*/
console.log(regex.test('а проверка б'))
我有这个正则表达式:(*UCP).*\bпроверка\b.*.
它在 regex101.com (https://regex101.com/r/9elF5c) 上运行良好,但在 JavaScript.
const regex = /(*UCP).*\bпроверка\b.*/
console.log(regex.test('а проверка б'))
谁能解释一下问题是什么以及如何解决
使用 (*UCP)
是 PCRE 支持的修饰符。
Javascript 中的错误是因为此语法不起作用 (*
括号是特殊字符,*
是量词。
如果字符串左右应该有空白边界:
.*(?<!\S)проверка(?!\S).*
const regex = /.*(?<!\S)проверка(?!\S).*/
console.log(regex.test('а проверка б'))