我有一个函数可以通过扫描博客条目,新闻和某些核心关键字的其他项目来帮助链接我网站中的页面。然后它将这些关键字替换为相应页面的链接。正则表达式替换不在HTML标签内的内容
我遇到了一些问题,有些词不应该被链接替换。例如,我在我的一些HTML表格中有一个摘要标记,其中包含表格内容的小概要。因此,例如,我可能有一个标签,看起来像这样:
...
我的功能错误地将替换关键字或短语,如“汽车零部件”的链接。我如何构建我的替换正则表达式而不是在像这样的情况下替换它,但是如果它出现在段落中,或者甚至在HTML表格的单元格中出现,请替换它。
在此先感谢您的帮助和指导!
编辑:只是为了澄清,我使用PHP来呈现我的网页。在内容以HTML格式输出到页面之前,我正在使用str_replace()。我希望能够用ereg_replace()替换它,以便只有在满足特定条件(如上所述)时才替换内容。对不起,如果这造成混乱!
2011-05-12
Dexter
+1
什么是您当前的正则表达式模式? –
2011-05-12 13:48:27
+1
似乎人们普遍认为,你不应该使用正则表达式与可复杂的HTML规则结合使用。您是否考虑过使用XML解析器来确定要运行替换的部分? –
2011-05-12 13:49:59
+0
对不起,我应该澄清,我会添加一条EDIT语句。我使用PHP来呈现页面输出。我会在PHp ereg_replace()中使用正则表达式,而不是使用str_replace()。 –
2011-05-12 14:08:27