当前位置: 首页 > 知识库问答 >
问题:

任何语言中单词字符的正则表达式

郎河
2023-03-14

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

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

共有2个答案

艾昊明
2023-03-14

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

咸晨
2023-03-14

尝试[\pL_]-参见参考

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

 类似资料:
  • REGEX试图构建一个能够检索单词的第一个字母、该单词的任何其他大写字母以及每个第一个字母(包括同一单词中的任何大写字母)的正则表达式时遇到了麻烦 尝试使用此JUS获得前2个匹配项: 欢迎任何帮助,谢谢

  • 我需要找到在字符串中出现字母a-z的小写单词的索引。但是,字符串中可能有一堆非字母字符。 例如,单词“don't”跨越短语“don't that”中的索引 [0, 5)。 我四处搜索匹配非字母字符的方法,并使用以下正则表达式实现了这一点: 有没有更简洁的方法来表达这个正则表达式?或者,我必须编写代码在要搜索的每个单词的每个字符之间插入[^a-z]*? 对不起,如果这个问题已经存在-我不知道如何准确

  • 问题内容: 我需要有关正则表达式的帮助:我正在尝试检查一个句子是否包含特定单词。 让我们以这个主题的标题为例: “正则表达式以查找字符串中的特定单词” 我需要查找它是否包含 if ,在这种情况下它是错误的。 我无法使用包含的方法,因为在这种情况下它将返回true( 如果为 * ic, 则为 spec * ) 我当时在考虑使用方法匹配,但我有点正则表达式。 基本上,匹配方法输入中的正则表达式需要指定

  • 问题内容: 我想在Elastisearch中使用单词边界进行正则表达式查询,但是看起来Lucene正则表达式引擎不支持。我可以使用哪些解决方法? 问题答案: 在ElasticSearch regex风格中,没有直接等效于单词边界的功能。最初是一样的东西,如果用一个字字符开始,并且尾部就像如果用一个字字符结束。 因此,我们需要确保在字符串的前后或字符串的开始/结束处有一个非单词char 。由于正则表

  • 我正在尝试抓取模式中第一个连字符之后的文本 但在此模式中: 我希望它跳过‘不想要的’文本,并匹配的文本后面的下一个连字符(DesiredText)。我创建了一个具有两种模式regex101,并需要修改我的基本regex,以便如果中存在一个或多个我不想匹配的单词,那么它将匹配第二个连字符文本: https://regex101.com/r/vesqh3/1

  • 如何覆盖正则表达式中的所有小写非数字单词字符? 例如,这将涵盖德国umlauts的 ...但是法语或西班牙语的单词字符呢?有没有可能让那些人被一个范围或类似的东西覆盖? 正则表达式不应匹配具有多个大写字符的字符串,如。但它应该与麦当劳相匹配。 所以最后我提出了 但它仍然不包括法语/西班牙语字符。 https://regex101.com/r/ofl4tj/2 火柴 不匹配