プレーンテキスト備忘録
正規表現
最終更新:
pula
-
view
最初にマッチした部分のみ取得
# 目的:a.htmlを取り出す
my $data = '<a href="a.html">a</a><br><a href="b.html">b</a><br>';
my $url1 = $data;
my $url2 = $data;
my $data = '<a href="a.html">a</a><br><a href="b.html">b</a><br>';
my $url1 = $data;
my $url2 = $data;
print "元データ:$data\n";
# 失敗例
$url1 =~ s/.*"(.*)".*/$1/;
print "s/.*\"(.*)\".*/$1/ = $url1\n";
$url1 =~ s/.*"(.*)".*/$1/;
print "s/.*\"(.*)\".*/$1/ = $url1\n";
# 成功例
$url2 =~ s/.*?"(.*?)".*/$1/;
print "s/.*?\"(.*?)\".*/$1/ = $url1\n";
$url2 =~ s/.*?"(.*?)".*/$1/;
print "s/.*?\"(.*?)\".*/$1/ = $url1\n";
実行結果
元データ:<a href="a.html">a</a><br><a href="b.html">b</a><br> s/.*"(.*)".*/b.html/ = b.html s/.*?"(.*?)".*/a.html/ = b.html