私は、テキストファイルから値を取得するパーサーを作成しています。 2つの値の他に、私はすべての値を取得することができます。値をキャプチャするための正規表現 - Perl
これらの2つの値を得るために私を助けてくれる人はいますか?ここで
は私のコードは次のとおりです。
use warnings;
open(my $fh, "<", "$tZPath\\Diag.txt") || print "can't open file filename : $!\n";
my ($aBT_Slave, $iD, $hready, $address);
while (defined(my $line = <$fh>)) {
if ($line =~ /ID\:\s*(.+?\W+)/i) {
$iD = $1;
print " Id -> $iD \n";
}
elsif ($line =~ /HREADY\:\s*(.+?\W+)/i) {
$hready = $1;
print " hready -> $hready \n";
}
elsif ($line =~ /ADDR0\w\s*(.+?\W+)/i) {
$address = $1;
print " address -> $address \n";
}
elsif ($line =~ /PCNOC\_(.*?\d+)/i) {
$aBT_Slave = "PCNOC_" . $1;
print " aBT_Slave -> $aBT_Slave \n";
}
}
ログファイルの内容:
ABT PCNOC_9 ID: 0x0000430c
ABT PCNOC_9 ADDR0: 0x000000e0
ABT PCNOC_9 ADDR1: 0x00000000
ABT PCNOC_9 HREADY: 0xfffffffd
ABT PCNOC_9 Slaves: 5
Fatal Error: AHB_TIMEOUT
誰がログからADDR0
値とPCNOC_9
を得るために私を助けてくださいことはできますか? こちらで不明確な治療を受けている場合はお知らせください。
ながら_why_に関する 追加のコンテキストを提供する、および/または、それは質問が大幅に長期的 値を改善する 答え_how_:修正。あなたの答えを[編集]して、説明を加えてください。 –