我想通过PHP突出显示句子中的关键字。
这是我的代码:
preg_replace("/\p{L}*?".preg_quote($string)."\p{L}*/ui", "<b>$0</b>", $info->plaintext)
现在我想知道如何突出显示下一个和上一个词。
示例:
好人并不总是要温暖可爱
如果关键字是 Cuddly ,则应该会突出显示热情和可爱。因此,脚本应绕过 和 并突出显示 warm 。
另一个例子和简单的例子(good
是关键字):
句:
这所学校非常好。
结果:
这所学校是非常好的。
答案 0 :(得分:2)
这些方面的东西:
preg_replace('/(\p{L}+\s+((and|or|a)\s+)*)?\p{L}*?' . preg_quote($string) . '\p{L}*/ui', '<b>$0</b>', $info->plaintext)
如果您在单词之后需要“和*”,只需将相同的逻辑应用到最后。 Here's a demo.