変数が定義されているかどうかを確認し、perl 正規表現を使用して配列内の 2 つのパターンを検索する方法は?
$/ = ""; # paragraph mode
__Data__
#SCSI_test # put this line into @arrayNewLines
kdkdkdkdkdkdkdkd
dkdkdkdkdkdkdkdkd
- ccccccccccccccc # put this line into @arrayNewLines
while(<FILEREAD>)
{
chomp;
my @arrayOld = split('\n',$_);
foreach my $i (0 .. $#arrayOld) # using the foreach of index to remove the lines.
{
if($arrayOld[$i] =~ /-(.*)/ || /\#(.*)/)
{
my @arrayNewLines = $arrayOld[$i];
splice @arrayOld,$i,1; # remove lines from arrayOld
print "@arrayNewLines\n";
}
print "@arrayOld\n";
}
}
このコードは、各タイプの - または # 行を同じ @arrayNewLines 配列に配置するという点では機能しません。最初の (/-(. )/) パターンでのみ機能し、2 番目の (/#(. )/) パターンでは機能しません。両方のパターンを検索する必要があり、未初期化メッセージの使用を防ぐために $arrayOld[i] 変数を定義しました。定義したい