Heim > Artikel > Backend-Entwicklung > Reguläre PHP-Ausdrücke: So passen Sie alle Bilder und Links in HTML an
Mit der Popularität des Internets sind die Erstellung und Entwicklung von Webseiten zu einer Branche mit großer Nachfrage geworden. Bei der Webseitenerstellung sind Bilder und Links unverzichtbare Elemente, und reguläre Ausdrücke sind bei der Verarbeitung dieser Elemente sehr nützlich. In diesem Artikel erfahren Sie, wie Sie reguläre PHP-Ausdrücke verwenden, um alle Bilder und Links in HTML abzugleichen.
1. Passende Bilder
In HTML werden Bilder normalerweise mit dem Tag a1f02c36ba31691bcfe87b2722de723b
eingeführt. Das Format ist wie folgt: a1f02c36ba31691bcfe87b2722de723b
标签引入,其格式如下:
<img src="图片路径" alt="替代文字">
为了匹配所有的图片,我们需要匹配所有的 a1f02c36ba31691bcfe87b2722de723b
标签,并从中提取出图片路径。我们可以使用以下正则表达式进行匹配:
$pattern = '/<img.*?src=["']?(.*?)["'].*?>/i';
该正则表达式的作用是:
1d0a94b69819f080670a8fe502661b4a
:匹配 a1f02c36ba31691bcfe87b2722de723b
开始标签。src=["']?
:匹配 src
属性。(.*?)
:使用非贪婪模式匹配图片路径。["'].*?>
:匹配 src
属性值之后的其他属性,以及 a1f02c36ba31691bcfe87b2722de723b
结束标签。下面是一个简单的 PHP 代码示例:
$html = ''; $pattern = '/<img.*?src=["']?(.*?)["'].*?>/i'; preg_match_all($pattern, $html, $matches); $images = $matches[1]; print_r($images);
输出结果为:
Array ( [0] => 1.jpg [1] => 2.jpg )
可以看到,我们成功匹配出了 HTML 中的所有图片路径。
二、匹配链接
链接也是网页中不可或缺的元素,通常使用 3499910bf9dac5ae3c52d5ede7383485
标签实现。其格式如下:
<a href="链接地址">链接文字</a>
我们需要匹配 3499910bf9dac5ae3c52d5ede7383485
标签,并从中提取出链接地址和链接文字。可以使用以下正则表达式进行匹配:
$pattern = '/<a.*?href=["']?(.*?)["'].*?>(.*?)</a>/i';
该正则表达式的作用是:
55784847ccfa800f7f23a4af7651bca8
:匹配 3499910bf9dac5ae3c52d5ede7383485
开始标签。href=["']?
:匹配 href
属性。(.*?)
:使用非贪婪模式匹配链接地址。["'].*?>
:匹配 href
属性值之后的其他属性。(.*?)5db79b134e9f6b82c0b36e0489ee08ed
$html = '百度谷歌'; $pattern = '/<a.*?href=["']?(.*?)["'].*?>(.*?)</a>/i'; preg_match_all($pattern, $html, $matches); $urls = $matches[1]; $names = $matches[2]; print_r($urls); print_r($names);
a1f02c36ba31691bcfe87b2722de723b
-Tags und extrahieren Sie den Bildpfad daraus. Wir können den folgenden regulären Ausdruck für den Abgleich verwenden: Array ( [0] => http://www.baidu.com [1] => http://www.google.com ) Array ( [0] => 百度 [1] => 谷歌 )
Die Rolle dieses regulären Ausdrucks ist:
1d0a94b69819f080670a8fe502661b4a
: Matches 5811a0e55f5c071c3af8b2b3e8fe348d
öffnendes Tag.
src=["']?
: Entspricht dem Attribut src
. (.*?)
: Nicht verwenden -greedy Muster passender Bildpfad.
["'].*?>
: Passt andere Attribute nach dem Attributwert src
an und 5811a0e55f5c071c3af8b2b3e8fe348d
schließendes Tag. Das Folgende ist ein einfaches PHP-Codebeispiel: rrreee
Das Ausgabeergebnis ist: 🎜rrreee🎜Wie Sie sehen können, haben wir alle Bildpfade im HTML erfolgreich abgeglichen. 🎜🎜2. Passende Links🎜🎜Links sind auch ein unverzichtbares Element in Webseiten und werden normalerweise mit dem Tag3499910bf9dac5ae3c52d5ede7383485
implementiert. Das Format ist wie folgt: 🎜rrreee🎜Wir müssen das Tag 3499910bf9dac5ae3c52d5ede7383485
abgleichen und daraus die Linkadresse und den Linktext extrahieren. Für den Abgleich kann der folgende reguläre Ausdruck verwendet werden: 🎜rrreee🎜Die Rolle dieses regulären Ausdrucks ist: 🎜55784847ccfa800f7f23a4af7651bca8
: Matches f6d0d2d62399e37efcb061e7183b17d7
: Übereinstimmung mit anderen Attributen nach dem Attributwert href
. 🎜(.*?)5db79b134e9f6b82c0b36e0489ee08ed
: Verwenden Sie nicht gierige Muster, um Linktext und schließende Tags abzugleichen. 🎜🎜🎜Das Folgende ist ein einfaches PHP-Codebeispiel: 🎜rrreee🎜Das Ausgabeergebnis ist: 🎜rrreee🎜Wie Sie sehen können, haben wir alle Linkadressen und Linktexte in HTML erfolgreich abgeglichen. 🎜🎜3. Zusammenfassung🎜🎜Durch die Verwendung regulärer PHP-Ausdrücke können Bilder und Links in HTML problemlos abgeglichen werden, was unsere Arbeit bei der Webseitenerstellung und Website-Entwicklung erheblich vereinfachen kann. Natürlich müssen wir bei der tatsächlichen Entwicklung auf die Optimierung und Fehlerbehandlung regulärer Ausdrücke achten, um die Stabilität und Sicherheit des Programms zu gewährleisten. 🎜Das obige ist der detaillierte Inhalt vonReguläre PHP-Ausdrücke: So passen Sie alle Bilder und Links in HTML an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!