如何使用正则表达式匹配unicode字符和非数字?

时间:2018-04-27 09:50:14

标签: regex

我试图合并两个正则表达式函数:

1)匹配非英语字符

2)匹配单词     没有数字。

目前我有这个:

\b[^\d\W]+\b

但我也需要补充一下:

[^\u0000-\u007F]

我如何将两者结合起来?验证的一个例子是:

你好,你好,怎么回事?

应该返回:

你好,你好吗?

1 个答案:

答案 0 :(得分:2)

您似乎希望在\x80或ASCII字母后匹配任何字符。

在这种情况下,您可以使用

[a-zA-Z\u0080-\uFFFF]+

请注意,您不应再依赖单词边界,因为该模式现在可以匹配非单词字符(您之前的单词字符只匹配“单词”字符)。

请参阅regex demo

请注意,您应该只测试与目标正则表达式库兼容的在线测试人员中的正则表达式模式。事实证明,regex101.com是PCRE,JS,Python和Go模式的优秀测试者。 Regexr目前仅支持JS和PCRE风格。