これは私を夢中にさせています!
txt ファイルを $filestring という文字列に読み込みました。
sysopen(handle, $filepath, O_RDONLY) or die "WHAT?"; local $/ = undef; my $filestring = <handle>;
動的に生成される $regex というパターン変数を作成しましたが、形式は次のとおりです。
(a)|(b)|(c)
スペースで区切られたパターンのテキストを検索します
while($filestring =~ m/($regex)\s($regex)/g){ print "Match: $1 $2\n"; #...more stuff }
ほとんどの一致は有効ですが、何らかの理由で次のような一致が時々発生します。
Match: and
一方、通常の一致には、次のような 2 つの出力が必要です。
Match: , and
誰がこれを引き起こしているのか知っていますか?
編集: NULL 文字がパターンで一致しているようです。