分页: 2 / 3

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-06 21:19
trigger
php都能截屏:截网页 :em04

但是我同意ee,perl那叫一个飘逸。

前一阵子处理比较多的混乱日志,先是用bash+awk+sed,后来就自然而然用perl了

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-06 21:24
eexpress
御风而行的Perl
推广perl,人人有责。
:em04

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-06 21:27
qy117121
eexpress 写了:
御风而行的Perl
推广perl,人人有责。
:em04
:em06

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-06 21:27
我就是我2
前一阵子处理比较多的混乱日志,先是用bash+awk+sed,后来就自然而然用perl了
说得我都 心动了。

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-06 22:57
xhy
log分析可能是perl最后的乐土了,其它领域已被挤兑出局,老一代程序员们可要守住阵地阿,
新人们是指望不上了,他们全是墙头草,流行什么追什么,都去整python,ruby,erlang了

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-07 9:56
jarlyyn
xhy 写了:log分析可能是perl最后的乐土了,其它领域已被挤兑出局,老一代程序员们可要守住阵地阿,
新人们是指望不上了,他们全是墙头草,流行什么追什么,都去整python,ruby,erlang了
python不新吧?

喜欢python和喜欢perl是完全不同的两种人吧。

python和perl骨子里的哲学就是相反的吧?

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-07 10:09
leeaman
没相反那么夸张,不过思维方式应该差异比较大,就像我和ee :em04

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-07 11:26
xhy
python和perl确实区别较大,语法设计理念有别,但思维模型还是相似的,
代码花招不算,懂perl的一般能看懂python代码,懂python也能看懂perl代码,
真正思维模式变化很大的是函数式语言,例如lisp和最近很火的erlang,
python和perl虽然也部分支持函数式特性,但跟函数式语言比还是差很多的。

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-07 13:14
eexpress
(defun clear-buffer()
"Kill all of the text in the current buffer."
(interactive)
(clipboard-kill-region 1 (point-max))
(comint-send-input)
(previous-line)
(kill-line)
(end-of-buffer))
可lisp的语法,是反人类的。把人当机器训练。让人去适用它那思维。除开()和空格,就差不多没其他符号了。
:em04
懂python也能看懂perl代码
估计py的,80%都反对。perl的内部变量和语法规则太多。

正则在perl,一次/xxxxx/; 就可以出这么多结果。
$` 在上个格式匹配信息前的字符串
$& 与上个格式匹配的字符串
$' 在上个格式匹配信息后的字符串
$<digits>含有与上个匹配正则表达式对应括号结果

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-07 13:45
xhy
match variables不难,随时可以翻查perldoc perlre,不会成为读代码的障碍,
特别是通过代码了解大体思路的时候,细节代码可以不太关注,
我做过一些项目,把老的perl代码翻译成py,还算顺利,多查手册多google就能搞定,
但是在函数式语言和非函数式语言之间翻译,就没那么直观了,除了语法,还有个思维转换过程.

erlang作为函数式语言能受欢迎,不是因为语法好,更不是思维模型舒服,
而是因为它天生的支持分布式和容错,对高并发互联网应用很有帮助,
C50K乃至C100K问题,用cpython解决很是吃力,用perl不可想象。

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-12 22:44
fnan
我就是我2 写了:
前一阵子处理比较多的混乱日志,先是用bash+awk+sed,后来就自然而然用perl了
说得我都 心动了。
#学正则用sed好,用正则用perl好,建议觉得能掌握正则了就用perl正则。(参考)
echo aaabaaaabaabc1aabc2aa|sed -r 's/ab([^b]*|(b+)?b[^cb])*(b+)?bc/[&]/'
aa[abaaaabaabc]1aabc2aa
echo aaabaaaabaabc1aabc2aa|perl -pe 's/ab.*?bc/[$&]/'
aa[abaaaabaabc]1aabc2aa
#perl优势是已经把公式化算法在引擎层面实现了,用元字符调用就行,这点很简便。
#就如见到的,sed得蛋疼的一本正经在正则层面写算法,(真不是人人写得出)。

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-12 22:52
fnan
jarlyyn 写了:
xhy 写了:log分析可能是perl最后的乐土了,其它领域已被挤兑出局,老一代程序员们可要守住阵地阿,
新人们是指望不上了,他们全是墙头草,流行什么追什么,都去整python,ruby,erlang了
python不新吧?

喜欢python和喜欢perl是完全不同的两种人吧。

python和perl骨子里的哲学就是相反的吧?
#对我来说,觉得骨子里其实是一样的东西。

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-13 13:09
tangboyun
怎么没人喷正则多了很难debug啊~~

懂perl的一定能看懂python的语法,反过来肯定错。。。。。。惯用法太多了。Perl书写起来从语法上看跳跃可以很大的。

要语法好看的话,个人觉得函数编程里应该是Haskell(要是懂离散数学或者范畴论的话,一定会同意的。。。)

erlang我不看好,因为说实话那不是门通用程序设计语言,我怀疑国内是被炒起来的,设计上一开始就只是作为门领域特异语言,很多特性很薄弱,它只是特别适合网络通信之类需要大规模进程间通信的程序。

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-13 13:13
cuihao
Pythoner路过看看。
:em04 通常不用正则,一定要用就临时查手册。
一直听说perl处理文本很利害。

Re: perl的正则最快,秒杀其它语言,甚至比C的正则库还快

发表于 : 2011-09-13 16:36
fnan
一般哪里这么多文件处理,偶然遇上,随手一个工具都行,大不了多写几个字符。