PHP 将文章详情内容匹配关键词作为内链的正则替换
$str = "我是一只小花猫,一直喵喵喵。然后又一天火币站的人来把我抓走了。我就是火币鸭,不要来欺负我";
$origin = [
'#(?=[^>]*(?=<(?!/a>)|$))火币站#',
'#(?=[^>]*(?=<(?!/a>)|$))火币#',
];
$target = [
'<a href="http://www.domain.com/p/火币站">火币站</a>',
'<a href="http://www.domain.com/c/火币">火币</a>',
];
$str = preg_replace($origin, $target, $str, 1); // 仅替换一次
echo $str;
// result
//我是一只小花猫,一直喵喵喵。然后又一天<a href="http://www.domain.com/p/火币站">火币站</a>的人来把我抓走了。我就是<a href="http://www.domain.com/c/火币>火币</a>鸭,不要来欺负我