PHP中如何匹配具有共同前缀的单词?

发布于 2024-10-05 09:13:43 字数 278 浏览 8 评论 0原文

我需要编写一个正则表达式来匹配该单词。要查找确切的单词,可以使用 /\bword\b/ 模式来完成。

但我希望该模式能够找到 wordwordswording 等。

例如,我想编写一个模式来查找段落字符串中的术语 accountaccountingaccountsaccountant

I need to write a regex to match the word. To find exact word can be done using /\bword\b/ pattern.

But I want the pattern to find word, words, wording and so on.

for example i want to write a pattern to find terms account, accounting, accounts and accountant in a paragraph string.

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

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

发布评论

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

评论(4

小忆控 2024-10-12 09:13:43

要仅匹配您的关键字(可选地后跟 singant,您可以使用:

/\b($word(?:|s|ing|ant))\b/i

查看

如果您想允许任何可选字母作为后缀,您可以使用:

/\b($word\w*)\b/i

To just match your keyword optionally followed by s, ing, ant, you can use:

/\b($word(?:|s|ing|ant))\b/i

see it

If you want to allow any optional letters as suffix you can use:

/\b($word\w*)\b/i
并安 2024-10-12 09:13:43

我想这会让你到达那里:

/\<word(|s|ing)\>/

I think this gets you there:

/\<word(|s|ing)\>/
过期以后 2024-10-12 09:13:43
\b(accounting|accounts|account)\b
\b(accounting|accounts|account)\b
暗喜 2024-10-12 09:13:43

我可能是错的,但我不认为 "/\b*word*\b/" 获取单词,而是它实际上匹配 '''''wor''''''wor' 或 ||worddddd|,如果您想要单词及其变体,请尝试:

/\bword[^\b]+\b/i

I might be wrong, but I don't think "/\b*word*\b/" gets word, instead it actually matches things like '''''wor' or ||worddddd|, if you want word and its variant, try:

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