perl 里面的$/=":"; 什么意思呢?

 我来答
extractposts
2011-03-15 · 超过12用户采纳过TA的回答
知道答主
回答量:33
采纳率:0%
帮助的人:38.5万
展开全部
请参阅Perl文档:

$/
The input record separator, newline by default. This influences Perl's idea of what a "line" is. Works like awk's RS variable, including treating empty lines as a terminator if set to the null string.

也就是一种输入记录的分隔符,举个例子,你原来读取文件的时候,默认的换行符是'\n',那么你知道每次读到'\n',就是一行结束。现在你可以把这个预定义变量换成“:”,那么现在的你读取文件的规则变了,就是每次遇到“:”符号的时候表示一行读完了。

如果文件data.txt的内容是:
C:C++:Java:Perl:Python:Ruby

那么如下的代码
#!perl

use strict;
use warnings;

my $file = "data.txt";
local $/ = ":";
open FILE, "<", $file or die "Can't open the file:", $!;
while (<FILE>)
{
chomp;
print $_, "\n";
}
close FILE;

执行后的结果就是:
C
C++
Java
Perl
Python
Ruby

明白啦?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式