从部分单词搜索字符串中匹配整个单词

发布于 2024-10-12 16:22:33 字数 174 浏览 7 评论 0原文

你能帮我创建一个匹配整个单词并包含特定部分的模式吗?例如,如果我有一个文本字符串执行正则表达式匹配,并且如果我搜索express,它应该给我表达式,如果我搜索 form,它应该给我 Perform 等等。

Could you help me to create a pattern, which matches whole words, containing a specific part? For example, if I have a text string Perform a regular expression match and if I search for express, it should give me expression, if I search for form, it should give me Perform and so on.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

抽个烟儿 2024-10-19 16:22:33
preg_match('/\b(express\w+)\b/', $string, $matches); // matches expression
preg_match('/\b(\w*form\w*)\b/', $string, $matches); // matches perform,
                                                     // formation, unformatted

其中:

  • \b 是单词边界
  • \w+ 是一个或多个“单词”字符*
  • \w*是零个或多个“单词”字符

请参阅转义序列用于PCRE。


* 注意:虽然不是真正的“单词字符”,但下划线 _ 也包含在字符类 \w 中。

preg_match('/\b(express\w+)\b/', $string, $matches); // matches expression
preg_match('/\b(\w*form\w*)\b/', $string, $matches); // matches perform,
                                                     // formation, unformatted

Where:

  • \b is a word boundary
  • \w+ is one or more "word" character*
  • \w* is zero or more "word" characters

See the manual on escape sequences for PCRE.


* Note: although not really a "word character", the underscore _ is also included int the character class \w.

终止放荡 2024-10-19 16:22:33

这与“执行”匹配:

\b(\w*form\w*)\b

这与“表达式”匹配:

\b(\w*express\w*)\b

This matches 'Perform':

\b(\w*form\w*)\b

This matches 'expression':

\b(\w*express\w*)\b
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文