请教flw 给解释一下 滥用正则的坏处?范畴?

请教flw 给解释一下 滥用正则的坏处?范畴?

不知道flw一直说的 滥用是什么范畴 ?大概怎么个标准? 有什么坏处?
一提到 Perl 就想用正则表达式,但是却又写不出一个好的正则表达式,这就叫滥用正则表达式。

其实很多时候正则表达式并不是唯一的解决方法,也未必是最好的解决方法,可要还去用,这就叫滥用正则表达式。

如果有替代方案比用正则表达式更优秀,那么就应该用替代方案。

复杂的正则表达式降低程序的可读性,这是我叫大家不要滥用正则表达式的原因之一。
原因之二,就是当我说这句话时,通常意味着我已经看到有一个人写出了一个拙劣的根本就不能满足需求的正则表达式。
窃以为是正则的通用性不好,只能给某个特定的任务制定。换句话,只能使用一次
呵呵,这就是差距啊
如果正确使用正则表达情况下   速度跟 两个字符串比较 哪个快一点儿?

我一直  没有理论根据的认为  正则匹配处理速度  会慢
俺觉得这个问题没有可比性,因为情况比较多。


QUOTE:
原帖由 hitsubunnu 于 2008-9-10 17:09 发表
如果正确使用正则表达情况下   速度跟 两个字符串比较 哪个快一点儿?

我一直  没有理论根据的认为  正则匹配处理速度  会慢

字符串比较哪个快我没有测试过,你可以试着做一个测试。
但是我可以负责任地告诉你:Perl 的正则表达式引擎很强,很快,超乎你想象地快。

我提倡的是不要“滥用”正则表达式,仅此而已。
就是感觉相同条件下 用正则处理的时候  会慢   

比如说  ==  处理比   eq  快

正则要匹配有很多判断  感觉应该处理时开销大
处理文本,提取一些内容的时候还是perl正则比较爽。

跟掐字符比较不出来哪个快,反正如楼上说的,很快。


QUOTE:
原帖由 hitsubunnu 于 2008-9-10 17:17 发表
就是感觉相同条件下 用正则处理的时候  会慢   

比如说  ==  处理比   eq  快

正则要匹配有很多判断  感觉应该处理时开销大

不要感觉,要测试。