Board logo

标题: [BUG反馈] 刚写了一条过滤规则,导致 世界之窗 崩溃 [打印本页]

作者: 285900537    时间: 2008-12-19 09:44     标题: 刚写了一条过滤规则,导致 世界之窗 崩溃

刚写了一条过滤规则,导致 世界之窗 崩溃

规则如下:


  1. #exd#*cnbeta.com*#<div[^>]*?good([^\n]*?\n){3}[^\n]*?display:none([\s\S]*?<\/div>){3}###
复制代码


规则对应的html代码:
  1. <div id="feedback">
  2.   <div id="good">
  3.    <div id="g_title">热门评论</div>
  4.    <div id="g_content">
  5.     <div id="loading_g_content" style="display:none; color:white; line-height:100%; height:10px;" >
  6.    
  7.     </div>
  8.     <div id="text_g_content" style="display:none"></div>
  9.    
  10.    
  11.    
  12.    </div>
  13.   </div>
复制代码


规则描述:访问cnBeta,打开文章页,如果文章页没有热门评论,则将热门评论的div过滤掉


错误信息:

---------------------------
Microsoft Visual C++ Runtime Library
---------------------------
Runtime Error!
Program: C:\Documents and Settings\ec\桌面\TheWorld.exe
R6025
- pure virtual function call

---------------------------
确定   
---------------------------
作者: wwwcccyyy    时间: 2008-12-19 11:57

从来不用规则,
坏处多多
作者: needed    时间: 2008-12-19 16:28

[^\n] 的意思是 非换行吧。。

直接换成一个点 ‘.’ 测试通过。。。

我不否认或许这是一个bug。 但为什么不尝试一下改变自己的规则呢 ?
一定要让CPU/程序干无用的功?

P.S.  最近写一个东西。发现最优的正则 跟一般的正则效率相差 可以相差 50倍以上

例如 .*? 跟 \f*? 相比。  后者所花费的时间是前者的 1/50
作者: 285900537    时间: 2008-12-20 18:18

当然,本帖只谈BUG,不谈技巧或思路。




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