php - 将字符串中某个单词的某些字符设为粗体

标签 php regex

我需要突出显示字符串中的某些字符, 我尝试了 str_replace 和 preg_replace。但是这些只有在输入完整的单词时才有效,

$text = str_replace($searhPhrase, '<b>'.$searhPhrase.'</b>',  $text);
$text = preg_replace('/('. $searhPhrase .')/i', '<b>$1</b>', $text);

我想要类似的东西,如果我搜索“and”,即使是“hand”中的字母也应该突出显示。

提前致谢。

最佳答案

$text = preg_replace('/\S*('. $searhPhrase .')\S*/i', '<b>$1</b>', $text);

这应该为您完成。

如果你想突出整个单词

$text = preg_replace('/(\S*'. $searhPhrase .'\S*)/i', '<b>$1</b>', $text);

关于php - 将字符串中某个单词的某些字符设为粗体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31606793/

相关文章:

php - 按特定顺序对 PHP 中的对象数组进行排序

php - 确定访问者是否在 CloudFlare Pro 上通过 SSL 连接

php - Laravel 5.2 中的 API 限制

结束行前有多行的正则表达式

javascript - 为什么正则表达式.*? javascript中只匹配空字符串?

php - 如何在 PHP 中选择要与 PDO 一起使用的 MySQL 数据库?

javascript - 通过 AJAX 重新加载下拉菜单中提交的 PHP 变量

python - 在数据帧列中查找字符串 "Quote"之后的数字

Ruby Regex 舍入尾随零

regex - sed linux 命令无法插入行