perl初めたてであほな質問かもしれないのですが、、

$lineに

<a href="http://***.com/abc/"; target="_blank">keyword</a> | <a href="http://***.com/def/"; target="_blank">hoge</a>


が格納されているときに、前半のURLだけを取得したくて

$line =~ m/href=['"'](.*)['"'](.*)keyword(.*)/i;
print "match : $1 \n";

のような正規表現を書いてみたのですが、$1には
http://***.com/abc/"; target="_blank
がマッチングしてしまいます。
これはどこが間違ってるのでしょうか?