如何在匹配项周围注入标签?

时间:2013-05-28 17:45:54

标签: php html insert replace

$pattern = "/of/i";
$text = "Offspring offers OFFENSIVE Offerings";

我希望所有的“大胆”,但保持案例。我会使用替换函数吗?我将覆盖原始部分(of,of,oF和OF将是)。那么,如何在所有匹配中“注入”Bold-Tags而不是替换?

2 个答案:

答案 0 :(得分:2)

只需在替换字符串中使用反向引用($0表示使用与整个模式匹配的文本)。案件将被保留。

$replaced = preg_replace('/of/i', '<b>$0</b>', $input);

答案 1 :(得分:1)

你应该只使用带有捕获的preg_replace:

$pattern = '/(of)/i';
$text = "Offspring offers OFFENSIVE Offerings";
$replace = preg_replace($pattern, '<b>' . $1 . '</b>', $text);