【发布时间】:2008-12-07 01:38:14
【问题描述】:
多年来,我一直断断续续地使用 Perl 进行编程,尽管它只是偶尔作为我的主要语言。因为我经常几个月都没有写任何 perl,所以我非常依赖我的折耳骆驼书来提醒我如何做事。然而,当我在不理解的情况下逐字复制食谱时,这让我很困扰。这是最让人头疼的问题之一:在 Camel 第 3 版的第 154 页,有一个“修改字符串 en passant 的示例,内容如下:
($lotr = $hobbit) =~ s/Bilbo/Frodo/g;
Q1) 这里发生了什么?正则表达式到底是在什么情况下运行的?
Q2) 对于“从 $a 中获取字符串,使用正则表达式对其进行修改,将结果放入 $b”这样的基本操作,这种近乎神奇的语法是否必要?
Q3) 如何使用循环默认变量作为初始字符串来执行此操作?
提前向 Perl 的梦想家们道歉,因为上面的内容看起来非常自然。
【问题讨论】:
标签: regex perl substitution