perl滑动匹配代码

前端之家收集整理的这篇文章主要介绍了perl滑动匹配代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
 open (ansf1,"$ansFile") or die "8\n";  #以下代码统计答案中的语音总时长  $answerflag=0;  $position1=0;  $dataflag1=0;  $answer_total=0;  while($ansfline1=<ansf1>) { #$pre1=$position1; #$position1 = tell(ansf1); chomp($ansfline1); if ($ansfline1 eq "\"data\"")     { $dataflag1=1; print "ansfline1 is $ansfline1\n"; $position1 = tell(ansf1); next; } $pre1=$position1;                 #   这两段是关键:记住上一行 $position1 = tell(ansf1);       #   这两段是关键:记住上一行 if($dataflag1==1) { print "dataflag1 is $dataflag1 and  line is $ansfline1\n"; if($answerflag==0) { if ( !( $ansfline1 =~ /\"/ ))   {   $answerflag=1;   $answer_time1=$ansfline1;   $pre21=tell(ansf1);       } } elsif($answerflag==1) {    if ( ! ( $ansfline1=~/\"/ ))   {   $answerflag=2;   $answer_time2=$ansfline1;       } else { #$position_minus=$position-$pre;  seek(ansf1,$pre1,0);      #回退1行   $position_change1 = tell(ansf1);       #print "position minus 1 is $position_change1\n";   $answerflag=0; }     } elsif($answerflag==2) {   #if($ansfline1=~ /[\x80-\xFF]+?/)   if($ansfline1=~/\"/)   {   #print "compute\n";   $count++;   print "$count  $ansfline1\n";   $answer_total+=$answer_time2-$answer_time1;   #print(frecOut "find $resfline in $resFile is not match in $ansFile\n");   }   else   {     seek(ansf1,$pre21,0);     #回退两行   $position_change1 = tell(ansf1);       #print "position minus 2 is $position_change\n";   }      $answerflag=0;       } #if( !( $ansfline=~/"/ ) ) #{ #  $answer_time1=$ansfline; #}    }  } close(resf); close(ansf1);

猜你在找的Perl相关文章