Preg Relplace只替换带有尾随空格的文本实例


Preg Relplace only replace instances of text with a trailing space

我有一个preg_replace问题。我使用preg_replace在文本块中使用以下代码生成上下文链接:

$contextualLinkStr = 'mytext';

$content = '我的文本字符串,其中包括MYTEXT在各种情况下,如MYTEXT和MYTEXT。然而,它也包括图像标签,如<img src="http://www.myurl.com/mytext-1.jpg">';

$content = preg_replace('/' . $contextualLinkStr . '/i', '<a href="foo.html">''0</a>', $content);

preg_replace在文本上工作得很好,并在保留大小写的同时生成相关链接,但它也在图像标记的URL内生成链接。我在想,如果我只是在preg_replace函数中的表达式中添加一个尾随空间,它会修复它,因为所有文本实例都将具有尾随空间,而没有图像url,如下所示:

$content = preg_replace('/' . $contextualLinkStr . '/i' . ' ', '<a href="foo.html">''0</a>' . ' ', $content);

但这不起作用。谁能告诉我怎么让尾随空格成为匹配的条件?

提前感谢。

Jason。

我刚刚算出来了。我太愚蠢了。参考相关代码为:

$content = preg_replace('/' . $contextualLinkStr . ' /i', '<a href="foo.html">''0</a> ', $content);

谢谢。