【发布时间】:2010-09-27 16:52:30
【问题描述】:
我有一种情况,我解析一段文本并用链接替换某些短语。然后我需要重新解析字符串以用链接替换第二组短语。此时问题出现了,第二组中的某些单词或短语可能是第一遍中已替换的短语的子字符串。
示例:字符串“blah blah grand canyon blah”在第一次传递后将变为“blah blah <a href="#">grand canyon</a> blah”。第二遍可能会尝试用链接替换单词“canyon”,因此生成的破碎文本将显示为:“blah blah <a href="#">grand <a href="#">canyon</a></a> blah”。
所以我一直在尝试使用 preg_replace 和正则表达式来防止出现嵌套的 <a> 标签 - 仅替换链接中尚未出现的文本。我试图根据文本中是否有</a>标签来检查正则表达式,但无法让这些工作。
也许需要另一种方法?
提前非常感谢! 戴夫
【问题讨论】:
-
这看起来非常接近this question
-
哇,谢谢,这正是我们所需要的!
-
我刚刚针对您的问题发布了该解决方案的 PHP 版本。