私はこれを持っています:
//VIOLATION_IGNORED
T_CH *i_pCH2string;
2 行目から //VIOLATION_IGNORED を読みたいと思います。正規表現を使用して処理するにはどうすればよいですか?
私は理解 APIを使用してそれを書いています。理解は、perl を介して独自の API を使用してスクリプトを作成する静的分析ツールです。2 行目から 1 行目を読み取るための正規表現が必要なだけです。
これはあなたが求めているものを達成しますか?
#!/usr/bin/perl
use warnings;
use strict;
my @file = ('//VIOLATION_IGNORED', 'T_CH *i_pCH2string');
my $current_line = "";
foreach (@file){
my $previous_line = $current_line;
$current_line = $_;
if ($current_line =~ /T_CH.*?/ ){
print "$previous_line\n"
# Do something else? ...
}
}
出力:
//VIOLATION_IGNORED
または、単純に //VIOLATION_IGNORED を含む行を無視したい場合:
foreach (@array1){
next if $_ =~ /\/\/VIOLATION_IGNORED/;
print "$_\n";
# Do something else? ...
}
出力:
T_CH *i_pCH2string