如何指定适用于英语以外的欧洲语言的正则表达式字符范围?

2023-11-24

我正在使用 Ruby 的正则表达式引擎。我需要编写一个正则表达式来执行此操作

WIKI_WORD = /\b([a-z][\w_]+\.)?[A-Z][a-z]+[A-Z]\w*\b/

但除英语外还可以使用其他欧洲语言。我不认为字符范围 [a-z] 会涵盖德语等中的小写字母。


WIKI_WORD = /\b(\p{Ll}\w+\.)?\p{Lu}\p{Ll}+\p{Lu}\w*\b/u

应该在 Ruby 1.9 中工作。\p{Lu} and \p{Ll}是大写和小写 Unicode 字母的简写。 (\w已经包含下划线)

也可以看看这个答案- 您可能需要在 UTF-8 模式下运行 Ruby 才能正常工作,并且您的脚本可能也必须以 UTF-8 编码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何指定适用于英语以外的欧洲语言的正则表达式字符范围? 的相关文章

随机推荐