javascript - 如何在不匹配特殊字符的情况下匹配 Unicode 特殊字母字符

标签 javascript regex unicode

我在这里进退两难。我正在尝试编写一个匹配东方语言和西方语言的所有字母字符的正则表达式模式。其中一个条件是没有数字可以匹配(所以 José13)不匹配但是(José)是,另一个条件是特殊字符不能匹配(即:!@#$% 等)

我在 chrome 的控制台中尝试过这个,我得到了:

"a".match('[a-zA-z]');

成功返回,当我输入:

"a".match('[\p{L}]');

我得到一个空响应,我不太明白为什么。根据http://www.regular-expressions.info/unicode.html\p{L} 是任何字母的匹配项。

编辑:\p 在我的 chrome 控制台中似乎不起作用,所以我会尝试不同的方法。我有一张来自 Unifoundry 的 unicode 图表。我将匹配正则表达式并尝试使字符范围无效。

任何输入将不胜感激。

最佳答案

这在 javascript 控制台中有效,但它看起来像是一个 hack:

.match('^[^\u0000-\u0040\u005B-\u0060\u007B-\u00BF\u00D7\u00F7]*');

但是它完成了我需要它做的事情。

在 SO 上引用了这篇文章:Javascript + Unicode regexes

关于javascript - 如何在不匹配特殊字符的情况下匹配 Unicode 特殊字母字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20473406/

相关文章:

javascript - js正则表达式转义引号

java - ANT + propertyregex 问题

ruby-on-rails - 在 Ruby on Rails 中将字符串转换为两字节十六进制 unicode

c - 如何在 C 中 lex unicode 字符?

php - 如果表单仅通过 JavaScript 提交,是否需要 PHP 验证?

javascript - 使用我的变量将子项添加到 E4X

javascript - 从圆形数组中采样(indexA 到indexB)

javascript - 如何在html中自动排序复选框列表

javascript - 正则表达式支持非顺序文本

delphi - 检查字符串是否可以在 XE4 及更高版本中安全地转换为 AnsiString 的最简单方法是什么?