gpt4 book ai didi

php - 用周围的词突出显示文本

转载 作者:可可西里 更新时间:2023-11-01 12:36:11 25 4
gpt4 key购买 nike

我想用给定的关键字突出显示给定字符串中的文本,并添加随机数量的周围单词。

例句:

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed.

示例关键字:

dolore magna

期望的结果:(标记关键字前后0-4个词

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et **dolore magna** aliquyam erat, sed.

我尝试了什么?

( [\w,\.-\?]+){0,5} ".$myKeyword."(.+){2,5}([a-zA-Z,. ]+){1,3} ".$n."([a-zA-Z,.]+){1,3}

有什么想法可以改进它并使其更健壮吗?

最佳答案

高亮使用preg_replace功能。这是一个想法:$s = "dolore magna";

$str = preg_replace(
'/\b(?>[\'\w-]+\W+){0,4}'.preg_quote($s, "/").'(?:\W+[\'\w-]+){0,4}/i',
'<b>$0</b>', $str);

测试pattern at regex101php test at eval.in . echo $str;

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed.

使用 i flag对于无大小写匹配 - 如果不需要则删除。第一组 ?> atomic性能。

  • 作为单词字符,我使用了 ['\w-](\w shorthand 作为单词字符,' -)
  • \W 匹配一个字符,不是单词字符(否定\w)
  • \b 匹配 word boundary .使用它以获得更好的性能。

关于php - 用周围的词突出显示文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31762487/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com