Php 防止预更换发生变化<;A>;元素含量
我现在有一个我写的链接替换功能,可以找到某些关键字,并将所说的关键字转换为相关内容的链接 到目前为止,它一直工作得相当好,除了偶尔,它添加的链接也包含一个关键字 这个问题已经导致我的关键字变成了一个混乱的hmtl代码和未工作的链接,无论这种情况发生在哪里 我计划做的是在替换之前进行最后一次检查,以验证关键字是否在元素中 是否可以确定内容是否在这些标记之间?如果是,是如何做到的 这些是我用来查找关键字的当前模式Php 防止预更换发生变化<;A>;元素含量,php,preg-replace,Php,Preg Replace,我现在有一个我写的链接替换功能,可以找到某些关键字,并将所说的关键字转换为相关内容的链接 到目前为止,它一直工作得相当好,除了偶尔,它添加的链接也包含一个关键字 这个问题已经导致我的关键字变成了一个混乱的hmtl代码和未工作的链接,无论这种情况发生在哪里 我计划做的是在替换之前进行最后一次检查,以验证关键字是否在元素中 是否可以确定内容是否在这些标记之间?如果是,是如何做到的 这些是我用来查找关键字的当前模式 $pattern = "/\b $kw \b/"; $pattern2 = "/\b
$pattern = "/\b $kw \b/";
$pattern2 = "/\b $kw. \b/";
$pattern3 = "/\b $kw, \b/";
首先,您的模式可以合并为一个:
$pattern = "/\b $kw[.,]? \b/";
我质疑那里的空白。你可能不想要它们
$pattern = "/\b$kw[.,]?\b/";
现在是巫毒黑色雷格克斯魔法末日强>
$pattern=“并且考虑使用语法分析器代替。谢谢您的回复。我只是回应说它不起作用,但我也试图把它作为一个条件,而不是仅仅把它放在preg替换中。现在它工作得很好。我听说正则表达式不是修改html的方法,但是这个项目很小,只允许我的管理员输入信息,所以如果有任何问题,我们会马上知道。再次感谢你!
$pattern = "/<a\b.*?<\/a>(*SKIP)(*FAIL)|\b$kw[.,]?\b/";