do和$/一点组合使用

前序

我们知道,do 'filename'是从文件里读出内容然后执行其中的语句,返回最后一个表达式的值,好了还有perl特殊字符的就是

噔噔--    $/ 啦, 只是起到分隔符的作用,即对匹配的字符分割。

好了说完了,正式如题,

如果在使用

my $pro=do{
local $/;
<filename>
}
print $pro;
  • $/ 没有赋值会怎样,结果会出现什么。是的如果filename文件里只有一行字符,不好意思,没有任何可见的影响,有n(n>2)行,可以看到会打印filename里的所有东西出来。
  • $/ 进行赋值后,只会打印匹配至的字符串出来。

有意思吧,为什么那?local一个局部初始化变量的关键词,那么在只是定义没有初始化后,他值是undef ,用一个undef的值去分割字符肯定是没有任何可以匹配的,所以就得到了所有的字符串

--ps关于perl内置的特殊字符在这里:http://www.cnblogs.com/ace9/archive/2011/04/29/2032755.html

猜你喜欢

转载自gliudong.iteye.com/blog/1676679
今日推荐