1
ファイルを読み込み、2つのハッシュキーの間にすべてを集めようとしています。 $ beginString変数と$ endString変数の間のすべてにアクセスしたいと思います。私は複数の正規表現を試しましたが、動作させることができませんでした。あなたは( `IF($含むFileContent =〜/ \ $ B beginString \ bを複数行にまたがるする場合Perlがファイルを読み込んで2つの文字列の間に文字列を取得する
my $beginString = "SEARCH";
my $endString = "TEST";
my $fileContent;
open(my $fileHandler, $inputFile) or die "Could not open file '$inputFile' $!";
{
local $/;
$fileContent = <$fileHandler>;
}
close($fileHandler);
if($fileContent =~ /\b$beginString\b(.*?)\b$endString\b/){
my $result = $1;
print $result;
}
print Dumper($fileContent);
あなたは' s'modifierを必要とします。*?)\ b $ endString \ b/s'''''が '' dot ''を改行にマッチさせることができます。 –
ありがとうございました!しかし、それは完全な解決策ではありませんでした。 – victorz22
ヒント: "ファイルハンドラ"(ファイルを扱うもの)ではなく、 "ファイルハンドル"(リソースを保持するもの)と呼ばれています。 – ikegami