最近我惊讶地发现,JavaScript没有内置的Unicode正则表达式支持。
那么我该如何测试一个字符串是否只包含字母,无论是Unicode还是ASCII?
最近我惊讶地发现,JavaScript没有内置的Unicode正则表达式支持。
那么我该如何测试一个字符串是否只包含字母,无论是Unicode还是ASCII?
我建议使用 Steven Levithan 的优秀 XRegExp 库,其中包含了各种 Unicode 字符类的插件:http://xregexp.com/plugins/
最近我惊讶地发现,Javascript没有内置的unicode正则表达式支持。
这对我也是一个惊喜,因为
alert(/\u00B6/.test("¶"));
打印出 true。
\uHHHH
符号是 JavaScript 的一种语言特性。Unicode 正则表达式支持包括 Unicode 属性 (\p{L}
)、块 (\p{InLatinExtendedA}
) 和脚本 (\p{Cyrillic}
) 等等。然而,JavaScript 正则表达式并没有这些功能;你必须使用 XRegExp Unicode 插件或者切换到其他语言才能实现。 - Alan Moore