我有一些带文字的字符串,我想将所有图片链接替换为img标签和其他指向标签的链接。
我已经这样做了:
$row['message'] = preg_replace('/(http:\\/\\/.+(png|jpeg|jpg|gif|bmp))/Ui', '<img height="'.self::getConfig('image_height').'" src="$1" />', $row['message'], -1, $countImages);
如何将除img标记之外的所有链接替换为$row['message']
中的标记?
感谢名单!
答案 0 :(得分:0)
为正则表达式添加否定的lookbehind,以查看该网址是否在src="
之后。
$row['message'] = preg_replace('/(?<!src=")(http:\\/\\/.+(png|jpeg|jpg|gif|bmp))/Ui', '<img height="'.self::getConfig('image_height').'" src="$1" />', $row['message'], -1, $countImages);