0

重複の可能性:
phpを使用してhtmlからimg src、title、altを抽出する方法は?

ウェブページを解析して完全な画像を取得しようとしています。例えば

<html>

<body>
<a href='1.jpg'><img src='tn1.jpg /></a>
<a href='2.jpg'><img src='tn2.jpg /></a>
<a href='3.jpg'><img src='tn3.jpg /></a>
<a href='4.jpg'><img src='tn4.jpg /></a>
</body>
</html>

だから私はそれらをキャプチャして完全なサムネイルを取得しようとしています:

1.jpg
2.jpg
3.jpg
4.jpg

私のPHP正規表現コードは次のとおりです。

$text = file_get_contents($website); //Get webpage

preg_match_all("~$[0-9](.*?)\.jpg~i", $text, $matches);

しかし、実行すると、$ matches配列は空ですが、パスはWebisteにあります。私の正規表現の何が問題になっているのでしょうか?

情報:すべての画像はパターンに従い、すべて数字の後に.jpgが続きます

4

1 に答える 1

2

HTMLを解析するために正規表現を使用することはお勧めしませんが、これを適切に行いたくない場合は、トリックを実行する正規表現を次に示します。/(?<=['"])\d+\.jpg/i

デモはこちら: http://regex101.com/r/xC8nP2

正規表現の問題は、アンカーの誤用です$

于 2012-12-16T12:39:52.027 に答える