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

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

WBOY
WBOYOriginal
2023-06-22 22:55:38614Durchsuche

In PHP können reguläre Ausdrücke verwendet werden, um HTML-Tags einfach aus Strings zu entfernen. HTML-Tags sind normalerweise Auszeichnungssprachen, die in spitze Klammern eingeschlossen sind und zur Darstellung verschiedener Inhalte auf Webseiten verwendet werden, wie z. B. Titel, Absätze, Bilder, Links usw. Irgendwann müssen wir jedoch möglicherweise die HTML-Tags aus der Zeichenfolge entfernen, um die Daten besser verarbeiten und darstellen zu können. Werfen wir einen Blick darauf, wie man reguläre Ausdrücke verwendet, um diese Aufgabe in PHP zu erfüllen.

Zunächst möchten wir klarstellen: Die Verwendung regulärer Ausdrücke zur Verarbeitung von HTML-Tags ist keine perfekte Lösung. Obwohl reguläre Ausdrücke sehr leistungsfähig sind, gibt es viele verschiedene Formen und Verwendungszwecke von HTML-Tags, sodass reguläre Ausdrücke möglicherweise nicht jede Situation abdecken. Daher müssen wir die Vor- und Nachteile abwägen und basierend auf den spezifischen Anforderungen und Datenmerkmalen die am besten geeignete Methode auswählen.

Werfen wir nun einen Blick auf einige häufig verwendete reguläre Ausdrücke zum Entfernen von HTML-Tags aus Zeichenfolgen.

  1. Alle HTML-Tags entfernen

Diese Methode kann alle HTML-Tags in der Zeichenfolge löschen, so dass nur einfacher Textinhalt übrig bleibt. Es wird ein sehr einfacher regulärer Ausdruck verwendet:

$text = preg_replace('/<[^>]*>/', '', $text);

Die Bedeutung dieses regulären Ausdrucks ist: Übereinstimmung mit jeder Zeichenfolge, die mit „db20a0373f500b5c789d398c17b6f290“ endet, wobei „>“ vorangestellt ist “ bedeutet jedes Zeichen außer „>“, „“ bedeutet, dass es beliebig oft vorkommen kann. Angegebene HTML-Tags löschen

    Wenn Sie nicht alle HTML-Tags, sondern nur einige angegebene Tags löschen möchten, können Sie den folgenden regulären Ausdruck verwenden:
  1. $text = preg_replace('/<(/)?(p|ul|ol|li|strong|em)>/', '', $text);
  2. Die Bedeutung dieses regulären Ausdrucks ist: Übereinstimmung Zeichenfolgen der Form: „e388a4556c0f65e1904146cc1a846bee“, „94b3e26ee717c64999d7867364b1b4a3“, „ff6d136ddc5fdfeffaf53ff6ee95f185“, „929d1f5ca49e04fdcb27f9465b944689“, „c34106e0b4e09414b63b2ea253ff83d6“, „f6f112ef45f603be226bc581f9dd5e90“, „25edfb22a4f469ecb59f1190150159c6“, „bed06894275b65c1ab86501b08a632eb“, „
“, „

“, „

“ und „

“. Wobei „(/)?“ ein optionales Schrägstrichsymbol darstellt, das für schließende Tags wie „/p“ und „/ul“ verwendet wird. „(p|ul|ol|li|strong|em)“ stellt einen optionalen Tag-Namen dar, wobei „|“ ein logisches ODER darstellt. Bestimmte HTML-Tags beibehalten

    Im Gegensatz zum Löschen bestimmter HTML-Tags müssen wir manchmal einige bestimmte Tags behalten und andere Tags löschen. Zu diesem Zeitpunkt können Sie den folgenden regulären Ausdruck verwenden:
  1. $text = preg_replace('/<(?!p|a)(/)?[^>]*>/', '', $text);
  2. Die Bedeutung dieses regulären Ausdrucks ist: Übereinstimmung mit jeder Zeichenfolge, die mit „36cc498befc161911058dde43b9df57f“. HTML-Tags und deren Inhalte löschen
      Manchmal möchten wir nicht nur die HTML-Tags selbst, sondern auch deren Inhalte löschen. Zu diesem Zeitpunkt können Sie den folgenden regulären Ausdruck verwenden:
    1. $text = preg_replace('/<[^>]*>.*?</[^>]*>/', '', $text);
    2. Die Bedeutung dieses regulären Ausdrucks ist: Übereinstimmung mit allem, das mit „06748968864ed656cef6749a440c0efc“ endet und alle Zeichen in der Mitte enthält, bis „d96ea651a5f5b8b6ada5e130d8c06959 ↩

Das obige ist der detaillierte Inhalt vonSo entfernen Sie HTML-Tags mithilfe regulärer Ausdrücke aus einem String in PHP. 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