$content = "哦哦哦哦信用卡<啊啊啊啊>信用卡隐隐约约隐隐约约\"信用卡中国农业银行啊啊啊中国农业银行信用卡\"呜呜呜为=信用卡中国石油论坛信用卡3大学百科招商银行易博公益百科招商银行信用卡4动物世界中国工商银行电力维基百科,中国工商银行信用卡5中国建设银行中国建设银行信用卡6中国银行中国银行信用卡7";这里面有很多“信用卡”的词语,其中“信用卡< >信用卡 "信用卡 信用卡" =信用卡”这5个两边有符号是不能替换的,我如何才能在后面的几个“信用卡”的两边加上<a href="index.php"></a>???
$dict = array('<', '>', '=', '"', ' ');
if(in_array($r[1], $dict) || in_array($r[3], $dict)) {
return $r[0];
}
return "$r[1]<a href='index.php'>$r[2]</a>$r[3]";
}echo preg_replace_callback("/(.)(信用卡)(.)/", 'foo', $content);
哦哦哦哦信用卡 <啊啊啊啊>信用卡隐隐约约隐隐约约"信用卡中国农业银行啊啊啊中国农业银行信用卡"呜呜呜为=信用卡中国石油论坛<a href='index.php'>信用卡</a>3大学百科招商银行易博公益百科招商银行<a href='index.php'>信用卡</a>4动物世界中国工商银行电力维基百科,中国工商银行<a href='index.php'>信用卡</a>5中国建设银行中国建设银行<a href='index.php'>信用卡</a>6中国银行中国银行<a href='index.php'>信用卡</a>7
$content = "哦哦哦哦信用卡 <啊啊啊啊>信用卡隐隐约约隐隐约约\"信用卡中国农业银行啊啊啊中国农业银行信用卡\"呜呜呜为=信用卡中国石油论坛信用卡3大学百科招商银行易博公益百科招商银行信用卡4动物世界中国工商银行电力维基百科,中国工商银行信用卡5中国建设银行中国建设银行信用卡6中国银行中国银行信用卡7"; $content = preg_replace('/([^\<\>\=\"\s])(信用卡)([^\<\>\=\"\s])/', "$1<a href=\"index.php\">$2</a>$3", $content);echo $content;