Heim >Backend-Entwicklung >PHP-Tutorial >So entfernen Sie HTML-Tags in PHP mithilfe regulärer Ausdrücke

So entfernen Sie HTML-Tags in PHP mithilfe regulärer Ausdrücke

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2023-06-22 17:00:111045Durchsuche

In der Webentwicklung ist HTML ein wesentliches Element. Aber manchmal müssen wir einfachen Text ohne HTML-Tags aus HTML extrahieren. Derzeit sind reguläre Ausdrücke ein sehr praktisches Werkzeug.

In PHP können Sie die Funktion preg_replace() verwenden, um HTML-Tags zu entfernen. Die Verwendung dieser Funktion ist wie folgt:

preg_replace($pattern, $replacement, $subject);

Wobei $pattern das reguläre Ausdrucksmuster, $replacement die Ersetzungszeichenfolge und $subject die zu verarbeitende Zeichenfolge ist. Beachten Sie, dass sowohl $pattern als auch $replacement Arrays sein können, wie unten erläutert.

Als nächstes besprechen wir einige gängige reguläre Ausdrücke zum Entfernen von HTML-Tags.

  1. HTML-Tags entfernen
$pattern = '/<[^>]*>/';
$replacement = '';
$text = preg_replace($pattern, $replacement, $html);

In diesem regulären Ausdruck bedeutet 9bd839b2a0d4954801143990e08a20e1-Tag ab und entfernt ihn. Das (?s)-Token bedeutet, dass es mit jedem Zeichen übereinstimmt, einschließlich Zeilenumbrüchen. Dieser Ausdruck ist auch nicht gierig, da er *? verwendet, das so wenige Zeichen wie möglich abdeckt.

  1. Style-Tags entfernen
$pattern = '/<style[^>]*>(.*?)</style>/is';
$replacement = '';
$text = preg_replace($pattern, $replacement, $html);

Dieser reguläre Ausdruck gleicht jeden Text mit einem c9ccee2e6ea535a969eb3f532ad9fe89-Tag ab und entfernt ihn. (?s)-Marker und *? werden auf ähnliche Weise wie im vorherigen Beispiel verwendet.

  1. Leere Tags entfernen
$pattern = '/<([a-z]+)(?:s+[^>]+)?>(s*)</>/i';
$replacement = '';
$text = preg_replace($pattern, $replacement, $html);

Dieser reguläre Ausdruck gleicht alle leeren Tags ab und entfernt sie. (s*) passt zu jedem Leerzeichen. ?: stellt eine nicht erfassende Gruppe dar, was bedeutet, dass sie abgeglichen, aber nicht ersetzt wird.

  1. Entfernen Sie unnötige Leerzeichen.
$pattern = '/>s+</';
$replacement = '><';
$text = preg_replace($pattern, $replacement, $html);

Dieser einfache reguläre Ausdruck sucht nach jedem Leerzeichen zwischen zwei Tags und ersetzt es durch ein einzelnes Leerzeichen.

Zusammenfassend lässt sich sagen, dass diese regulären Ausdrücke häufig beim Entfernen von HTML-Tags verwendet werden. Natürlich gibt es viele Möglichkeiten, HTML-Tags zu entfernen. Die endgültige Wahl hängt von Ihren spezifischen Anforderungen und der Implementierung Ihres Codes ab.


  1. >

Das obige ist der detaillierte Inhalt vonSo entfernen Sie HTML-Tags in PHP mithilfe regulärer Ausdrücke. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn