诈骗者正在使用这种形式的消息向我们的用户群发消息 (𝕀 𝕒𝕞 𝕧𝕖𝕣𝕪 𝕚𝕟𝕥𝕖𝕣𝕖𝕤𝕥𝕖𝕕。(𝟞𝟟𝟠) -
我的问题:
他们使用的字符,𝔸(数学双击 A (U+1D538))-𝕫(数学双击 z (U+1D56B))是 Unicode 字符的一部分,而不是单独的字体。
如果您在编写正则表达式时没有考虑特殊的 Unicode 字符,那么它们将不会捕获这些字符,因为简单的
/\w/
不会匹配任何这些字符,除非您还指定显式匹配 Unicode(通常在以下位置使用标志 /u
)表达式结尾)。
同样,
/A/
不会匹配"𝔸"
,因为它们是不同的字符,并且该模式仅匹配该特定字符。
为了不必考虑表示相似字符的所有可能方式,您可以在对它们运行正则表达式之前标准化您的 Unicode。这样,就可以保证一致的表示,并且您将可以更轻松地编写与更广泛的文本匹配的表达式。