为什么正则表达式 \b 元字符不匹配单词末尾的土耳其字符?

Why doesn't Regex \b metacharacter match Turkish characters at the end of the word?

我正在尝试仅在字符串中使用 Regex 来解析单词。此字符串包含 çğıİöşü.

的土耳其语字符

我尝试了 \b[\wçğıİöşü]+\b 正则表达式模式,但效果并不理想。

在上图中,我希望模式完全匹配 BehiçGüneş。但如您所见,它只匹配 BehiGüne。匹配 BehiçGüneş 的正确模式是什么?

您得到的结果是因为 Regex101 中的默认正则表达式模式是 PCRE (PHP),并且关闭了对 unicode 字符的支持。如果将风格更改为 Python(q.v。下面的演示),您将看到预期的行为。

只需打开对 unicode 或 UTF-8 的支持,您的问题就可以解决。

Demo