【发布时间】:2020-01-24 11:46:06
【问题描述】:
我正在尝试一个脚本来找出元字符“|”之间的字符。我试图获得第一个和后续“|”的位置元字符并尝试打印这两个位置之间的字符串。下面是我试过的代码:
文件:|一个|乙|计数| D| E|
预期输出:A B 计数 D E
if($line =~ /\|/)
{
while ($line =~ m/\|/g)
{
my $start_pos = $-[0];
my $end_pos = $+[0];
my $hit_pos = "$start_pos - $end_pos";
my $char = substr($line, $start_pos, $end_pos);
if($char =~/\w/){
print "$char\n";
}
}
}
【问题讨论】:
-
这能回答你的问题吗? Split a string into array in Perl
-
@tripleee,不完全是,
-
substr 需要一个长度,而不是一个结束位置