我需要检测文件中的第一个字符是否为等号(=)并显示行号.我该怎么写这个if陈述?
$i=0;
while (<INPUT>) {
my($line) = $_;
chomp($line);
$findChar = substr $_, 0, 1;
if($findChar == "=")
$output = "$i\n";
print OUTPUT $output;
$i++;
}
Run Code Online (Sandbox Code Playgroud)
Ben*_*son 10
惯用perl将使用正则表达式(^意思是行的开头)加上一个可怕的内置变量,这些变量恰好意味着"文件行":
while (<INPUT>) {
print "$.\n" if /^=/;
}
Run Code Online (Sandbox Code Playgroud)
使用$findChar eq "=".在Perl中:
==并且!=是数字比较.他们会将两个操作数转换为数字.eq并且ne是字符串比较.他们会将两个操作数转换为字符串.是的,这很令人困惑.是的,我还是写==我的意思是eq 所有的时间.是的,我也永远发现自己的错误.
| 归档时间: |
|
| 查看次数: |
2452 次 |
| 最近记录: |