私は何かが欠けていると確信しており、別の目が必要です. 私はすでに警告を有効にしており、strict を使用しています。たとえば、変数の二重引用符の間を抽出しようとしています。
my $line = ' TITLE "Better off Faded"';
(my $title = $line) =~ s/"(.*?)"/$1/g;
print "title: [$title]\n";
print "MATCHDATA: <$`|$&|$'>\n";
print "capture1: $1\n";
これにより、次の出力が生成されます。
title: [ TITLE Better off Faded]
MATCHDATA: < TITLE |"Better off Faded"|>
capture1: [Better off Faded]
キャプチャが機能しているように見えますが、代替コマンドは、 $1キャプチャを入力するのではなく、 $title変数から二重引用符文字を削除するだけです。
キャプチャが機能しているので、使用できることは既にわかっています。
my $data = ($line =~ /"(.*?)"/)[0];
print "alt: [$date]\n";
二重引用符からデータを抽出するには、代わりに機能しないのはなぜですか?