gpt4 book ai didi

javascript - C++ 和 JS RegEx 等效于\p{L}

转载 作者:搜寻专家 更新时间:2023-10-31 01:35:05 26 4
gpt4 key购买 nike

我需要匹配电子邮件地址中的所有 unicode 字符。我可以使用\p{L} 在 Java 中进行此验证。在 JS 和 C++ 中是否有任何\p{L} 等价物?

如果不是,哪个是在 C++ 和 JavaScript 中提供此功能的最可靠的开源库?

最佳答案

ECMAScript 以及 std::regex 支持的所有其他风格不支持 Unicode 属性(Unicode 类别类)。 JavaScript 也没有这种支持。

解决方法是使用 Boost library在 C++ 和 XRegExp library 中在 JavaScript 中。

在 Boost 中,声明正则表达式如下:

boost::wregex reg(L"^\\p{L}+$");

请注意,^\p{L}+$ 仅匹配 1+ 个字母字符串。

一个 JS 例子:

var str = "bębnić";
regex = XRegExp('^\\p{L}+$');
console.log(regex.test(str));
<script src="https://cdnjs.cloudflare.com/ajax/libs/xregexp/2.0.0/xregexp-all-min.js"></script>

关于javascript - C++ 和 JS RegEx 等效于\p{L},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37994456/

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