2011年8月6日

perl智能匹配操作符~~

摘要: 介绍智能匹配操作符,英文叫做smart matching operator,写法是连续的两个波浪线~~,为什么说它是智能的呢?因为它能够根据操作符两侧的操作数进行智能匹配,具体智能到什么程度呢?听我一一道来!具体应用案例一,判断某个元素是否在给定的数组中这算是一个比较常见的问题,如果不用智能匹配操作符的话,我想多数人会这样写程序my $value = 3 ;my @array = (1, 2, 3, 4, 5) ;sub test{ for(@array){ if ($value == $_){ print "$value was found!\n" ; return ; 阅读全文

posted @ 2011-08-06 18:31 perlman 阅读(11301) 评论(3) 推荐(4) 编辑

perl常用正则表达式集合

摘要: 本文罗列了一些常用的正则表达式,不间断更新中。。。去除前导空格s/^\s+//去除尾部空格s/\s+$//去除前后空格s/^\s+|\s+$//g匹配任意字符/.*/s这里/s表示连换行符也匹配,因为.是不匹配换行符的,所以上面的表达式匹配任意字符。下面看第二种方法,perl中的元字符.能匹配所有单个字符,但是不能匹配换行符,如果要匹配的文本含有换行符,那么.将无法胜任,比如下面的xml文件。<Response> <Code>200</Code> <Description>Success</Description></Respo 阅读全文

posted @ 2011-08-06 10:25 perlman 阅读(9391) 评论(0) 推荐(0) 编辑

perl去除文本行首尾空格

摘要: perl中并没有其他语言中的trim函数,所以如果想去除文本行的首尾空格,只能自己写,不过用正则写起来也很简单,代码如下。use strict ;# Remove all leading whitespacesub trimleft{ my @array = @_ ; foreach(@array){ s/^\s+// ; } return @array ;}# Remove all trailing whitespacesub trimright{ my @array = @_ ; foreach(@array){ s/\s+$// ; } return @array ;}# Remove 阅读全文

posted @ 2011-08-06 10:16 perlman 阅读(7241) 评论(0) 推荐(0) 编辑

关于hash

摘要: 下面的代码有何区别?my %table ;my %table = () ;my %table = {} ;前两者是一样的,都是空hash表,第三行是匿名空哈希表,与前两者是不同的。 阅读全文

posted @ 2011-08-06 08:42 perlman 阅读(234) 评论(0) 推荐(0) 编辑

导航