Board logo

标题: 请问怎么过滤discuz6论坛的签名?这样写为什么不起作用? [打印本页]

作者: qeqe890    时间: 2008-8-11 15:52     标题: 请问怎么过滤discuz6论坛的签名?这样写为什么不起作用?

如题,论坛版本和这个论坛一样,请问怎么过滤掉签名。
#ex#<div[^>]class=signatures[\s\S]*?<\/div>###
如上这么写为什么不起作用?
作者: duckZCX    时间: 2008-8-11 15:55

#ex#<div[^>]*?signatures[^>]*?>[\s\S]*?<\/div>###

这个才对,呵呵
作者: qeqe890    时间: 2008-8-11 16:00

回复好快啊,谢谢!
可为什么加上class=,即
#ex#<div[^>]*?class=signatures[^>]*?>[\s\S]*?<\/div>###
就不行了?
作者: duckZCX    时间: 2008-8-11 16:03

原帖由 qeqe890 于 2008-8-11 15:52 发表 http://bbs.ioage.com/cn/images/common/back.gif
#ex#]class=signatures[\s\S]*?###


这个这个不只Class那里不一样吧,Class没必要再匹配了,基本就一个signature就可了
[^>]*? 没写完整,[\s\S]*?用的地方有偏差,呵呵
作者: qeqe890    时间: 2008-8-11 16:15

呵呵,可能显示有些问题,我的回帖是这样的(见附件)。我的意思是既然class是可有可无的匹配,为什么加上后这条语句就不起作用了?呵呵有点较真。。。

图片附件: rep.gif (2008-8-11 16:15, 2.13 KB) / 下载次数 535
http://bbs.theworld.cn/attachment.php?aid=50426&k=436c45f268276f80f9a10f5c308d15cb&t=1716035260&sid=K9B806


作者: needed    时间: 2008-8-11 16:51

因为不匹配. 所以就不过滤.
  

仔细看看源文件.  正确的代码会在 signatures 左右有 双引号
  即 #ex#<div[^>]*?class="signatures"[^>]*?>[\s\S]*?<\/div>###

测试通过
作者: qeqe890    时间: 2008-8-11 16:56

哦,原来是这样,用查看源文件看到的是class="signatures",而用ViewPage则是class=signatures没有引号,现在明白了。谢谢两位版主!!




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