当前位置: 首页 > 面试题库 >

突出显示字符串中的单词(如果包含关键字)

丌官坚秉
2023-03-14
问题内容

如果包含关键字,该如何编写整个单词的脚本? 示例: 关键字“ fun”,字符串-鸟很有趣,结果-鸟很有趣*。我做以下

     $str = "my bird is funny";
     $keyword = "fun";
     $str = preg_replace("/($keyword)/i","<b>$1</b>",$str);

但它只是修饰词。我的鸟是 乐趣 纽约


问题答案:

尝试这个:

preg_replace("/\w*?$keyword\w*/i", "<b>$0</b>", $str)

\w*?匹配关键字前面的任何单词字符(至少)和\w*关键字后面的任何单词字符。

并且我建议您使用preg_quote转义关键字:

preg_replace("/\w*?".preg_quote($keyword)."\w*/i", "<b>$0</b>", $str)

为了支持Unicode,请使用 u 标志,\p{L}而不要使用\w

preg_replace("/\p{L}*?".preg_quote($keyword)."\p{L}*/ui", "<b>$0</b>", $str)


 类似资料:
  • 问题内容: 我需要在段落中突出显示关键字,就像google在其搜索结果中一样。假设我有一个带有博客文章的MySQL数据库。当用户搜索某个关键字时,我希望返回包含这些关键字的帖子,但只显示帖子的一部分(包含搜索关键字的段落)并突出显示那些关键字。 我的计划是这样的: 找到内容中包含搜索关键字的帖子ID; 再次阅读该帖子的内容,并将每个单词放入固定的缓冲区数组(50个单词)中,直到找到关键字。 您能为

  • 在功能文档中,据说vespa支持类似关键字高亮的搜索引擎。我找不到任何关于如何实现它的例子。

  • 问题内容: 我们正在TextArea应用程序中使用JavaFX的控件,并尝试将其与 集成在一起-例如,当用户输入词典中没有的错误单词时,该单词将突出显示。 有什么办法可以突出显示控件中的单词吗?我在中没有看到任何选择,因此,如果有人可以建议一种方法? 我想,可能有可能使用组件并用分别为单词加上颜色。但是,这会带来很多不同的拼写检查问题,例如html标签和字数统计。 问题答案: JavaFX Tex

  • 问题内容: 我正在使用此代码突出显示搜索关键字: 但是,这仅突出显示一个关键字。如果用户输入多个关键字,则会缩小搜索范围,但不会突出显示任何单词。如何突出显示多个单词? 问题答案: 正则表达式是必经之路! 要以不区分大小写的方式进行匹配,请在正则表达式中添加“ i” 注意:对于像“ä”这样的非英语字母,结果可能会因地区而异。

  • 我有一个字符串“2020-03-25T22:00:00.000Z”,我想将其转换为OffsetDateTime。下面是我尝试的代码,但当我将毫秒传递为000时,它不会反映在OffsetDateTime中。 但是当米利是000的时候 我也试过自定义格式,但它的行为相同 谁能帮我一下吗

  • 本文向大家介绍使用PHP显示动态突出显示的字符串,包括了使用PHP显示动态突出显示的字符串的使用技巧和注意事项,需要的朋友参考一下 该功能可能用途有限,但可以在您的标题中创建一些整洁的效果。它的工作原理是使用空格将字符串分成几小段,然后将其重新放回两部分。第一部分是正常的,但是第二部分将被包裹在span元素中。通过使用此功能,您可以通过将前半部分的样式与后半部分的样式不同来在标题中创建有趣的效果。