世界之窗论坛's Archiver

idn 发表于 2007-3-31 13:42

rc1+黑名单问题研究

正则表达式中凡是使用非贪婪模式并且重复的,都会极大影响浏览速度
例如这条:#exd#*86zw.com*#<IFRAME id=("p180"|yahoo|MooterMedia)[color=red](?:.|\n)*?[/color][color=black]>[/color]<\/iframe>###<!--by idn-->
或者置顶里面的那条#ex#<!--ads begin-->[color=red](?:.|\n)*?[/color]<!--ads end-->###
其中带有[color=#ff0000](?:.|\n)*?[/color][color=black]这种非贪婪重复匹配模式,你会发现浏览时浏览器会发呆几秒钟,大家试试看,是不是这么回事[/color]
[color=#000000][/color]
[color=#000000]不好意思,少写了个括号,已改正[/color]

[[i] 本帖最后由 idn 于 2007-3-31 14:00 编辑 [/i]]

mutalisker 发表于 2007-3-31 14:57

楼主的建议改进方式是?

fratre 发表于 2007-3-31 16:09

也许可以考虑测试一下使用别的正则表达式解析引擎。当然,就算要试试,这也应该是2.5或3.0版的事了。

我一直有个问题想问,就是为什么用微软组件提供的vbs/js的正式表达式解析?
我想好处就是:
增加正式表达式的支持而主程序大小变化不大


但是微软提供的这个正式表达式的解析性能并不是太好,这是与pcre相比,如果与这里([url=http://swtch.com/~rsc/regexp/regexp1.html]http://swtch.com/~rsc/regexp/regexp1.html[/url])相比就更不用说了。

等到2.0版正式推出了,开发人员有空了,可以考虑在以后的版本中尝试一下,看看对性能的影响到底有多大。

wdpfox 发表于 2007-3-31 18:13

不用正则表达式,浏览速度会很流畅!请网友试试!

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.