Board logo

标题: 请问这样怎么编写规则为什么不行? [打印本页]

作者: maxint    时间: 2007-12-30 10:07     标题: 请问这样怎么编写规则为什么不行?


<div class="box">
<span class="headactions"><img id="forumlinks_img" src="images/default/collapsed_no.gif" alt=""  /></span>
<h4>联盟论坛</h4>
<table summary="联盟论坛" id="forumlinks" cellpadding="0" cellspacing="0" style="">   <tr>
    。。。
  </table>
</div>

我编写规则为:

#exd#*ioage.com*#<div[\s\S]*?联盟论坛[\s\S]*?<\/div>###<!--Ad blocked by TheWorld2-->

结果是从第一个<div开始到联盟论坛的那个div都被替代了,一直不解,请高手指教下啊!谢谢!

作者: maxint    时间: 2007-12-30 10:33     标题: 请问这样怎么编写规则为什么不行?


<div class="box">
<span class="headactions"><img id="forumlinks_img" src="images/default/collapsed_no.gif" alt=""  /></span>
<h4>联盟论坛</h4>
<table summary="联盟论坛" id="forumlinks" cellpadding="0" cellspacing="0" style="">   <tr>
    。。。
  </table>
</div>

我编写规则为:
[quote]
#exd#*ioage.com*#<div[\s\S]*?联盟论坛[\s\S]*?<\/div>###<!--Ad blocked by TheWorld2-->

作者: lgc121    时间: 2007-12-30 10:51

看客路过。。。。。
作者: pcxg    时间: 2007-12-30 12:04

如果是我的话就:
#exd#*ioage.com*#<div class="box">[\s\S]*?<\/div>###<!--Ad blocked by TheWorld2-->
作者: 285900537    时间: 2007-12-30 12:57

[\s\S]*?是匹配所有的字符,你需要看一下\s和\S的作用。按照你的规则,TW会识别整个<body>内的第一个div,直到“联盟论坛”中文字之后的第一个div,所以不能这么些,

应该是这样的。
  1. #exd#*ioage.com*#<div[^>]*?([^\n]*?\n){2}<h4>联盟论坛[\s\S]*?<\/div>###<!--AdCode-->Ad_Test_001<!--TheWorld2-->
复制代码
如果“联盟论坛”后有两个相关的div,则需要使用()和{n}的组合。
  1. #exd#*ioage.com*#<div[^>]*?([^\n]*?\n){2}<h4>联盟论坛([\s\S]*?<\/div>){2}###<!--AdCode-->Ad_Test_002<!--TheWorld2-->
复制代码

作者: maxint    时间: 2007-12-31 08:35

噢,我现在明白了,谢谢楼上各位了,ls讲得真清楚,特别感谢!!
作者: maxint    时间: 2007-12-31 08:48

  1. #exd#*ioage.com*#<div[^>]*?([^\n]*?\n){2}<h4>联盟论坛[\s\S]*?<\/div>###<!--AdCode-->Ad_Test_001<!--TheWorld2-->
复制代码
不过这个好像也有问题,没效果。




欢迎光临 世界之窗论坛 (http://bbs.theworld.cn/) Powered by Discuz! 7.2