gpt4 book ai didi

javascript - Js RegEx 不识别重音字母 (utf-8)

转载 作者:行者123 更新时间:2023-11-30 11:15:07 24 4
gpt4 key购买 nike

Windows 10 64 位上的 Node.js 10.8.0需要识别包含非字母字符的字符串:

let a = "train"
/\W/u.test(a) // false
a = "non-good"
/\W/u.test(a) // true

到目前为止一切顺利。但如果字符串包含重音字母,这将不起作用:

a = "niño"
/\W/u.test(a) // true!?

请注意,我使用“u”修饰符使其适用于 Unicode。

错误还是功能?

显然,我可以将测试写成:

/[^a-zA-Zñ]/u.test(a)

添加所有重音字符,但似乎不是正确的方法。有什么建议吗?谢谢!

最佳答案

显然,特征。

根据 MDN:

\W

Matches any character that is not a word character from the basic Latin alphabet. Equivalent to [^A-Za-z0-9_].

( https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp )

我找不到任何来源声称 u 标志应该改变该行为。

关于javascript - Js RegEx 不识别重音字母 (utf-8),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51933361/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com