Page 1 of 1

请教一个字符串匹配的规则

Posted: May 24 2008, 14:27
by woai3838338
<a[^>]++href=$AV(*((he|re)$SET(pan=1)|$SET(pan=2))ad*&$TST(pan=2))*</a>

目的:清除含有ad的链接地址,但是此ad却不是head或read里面的。
我是为了清除一些广告链接。

遇到的问题:比如:链接地址是aaaheadad。就不被过滤。我感觉是这个规则只是检测到head字符串,而head后面的字符就不被检测了。我当然希望这个字符被过滤了,,因为他含有ad,这个ad也不是head和read里面的。


请教:这个问题如何解决。。
谢谢!!!

Re: 请教一个字符串匹配的规则

Posted: May 25 2008, 10:33
by phoenix
woai3838338 wrote:目的:清除含有ad的链接地址,但是此ad却不是head或read里面的。
这个定义比较模糊,面临多种可能的组合,我功力不够,没能写成一个通用规则来包含所有情况。

不如定义得更清楚些,比如不能包含/(he|re)ad.(php|asp),这样就大大缩小了组合的范围,实现起来会容易些。