【问题标题】:Regex for word characters in any language任何语言中单词字符的正则表达式
【发布时间】:2012-09-27 16:44:09
【问题描述】:

测试 PHP 正则表达式引擎,我发现它只将 [0-9A-Za-z_] 视为单词字符。非 ASCII 语言的字母(例如希伯来语)与 [\w] 不匹配为单词字符。是否有任何 PHP 或 Perl 正则表达式转义序列可以匹配任何语言的字母?我可以为我希望使用的每个字母添加范围,但用户总是会用意想不到的语言给我们惊喜!

请注意,这不是用于安全过滤,而是用于标记文本。

【问题讨论】:

    标签: php regex


    【解决方案1】:

    试试[\pL_] - 请参阅参考资料

    http://php.net/manual/en/regexp.reference.unicode.php

    【讨论】:

    • 非常好,谢谢。我还必须添加 u 修饰符才能让它工作。
    【解决方案2】:

    试试\p{L}。它匹配来自任何语言的任何类型的字母。如果你不想使用字符集[]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-27
      • 2023-03-26
      • 2015-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-26
      相关资源
      最近更新 更多