Php 使用正则表达式的选择性格式化

Php 使用正则表达式的选择性格式化,php,html,regex,Php,Html,Regex,我有一个非常复杂但格式良好的HTML字符串,里面有很多链接。我的部分任务是将所有锚定转换为粗体,并带有单词“XX1”。在PHP中不使用jQuery/js是否可以做到这一点?您可以使用preg\u replace为此,请尝试: preg_replace('/(<a.*>.*XX1.*<\/a>)/imU', '<b>${1}</b>', $html); preg_replace('/(.*XX1.*)/imU','${1}',$html); 没有

我有一个非常复杂但格式良好的HTML字符串,里面有很多链接。我的部分任务是将所有锚定转换为粗体,并带有单词“XX1”。在PHP中不使用jQuery/js是否可以做到这一点?

您可以使用
preg\u replace
为此,请尝试:

preg_replace('/(<a.*>.*XX1.*<\/a>)/imU', '<b>${1}</b>', $html);
preg_replace('/(.*XX1.*)/imU','${1}',$html);

没有测试该模式,但应该可以工作。

用其他方法测试了,但究竟是什么?认可的。谢谢我同时测试了这个模式,它似乎起作用了,也许有一些特殊的情况我没有想到它会失败?