Heim  >  Artikel  >  Web-Frontend  >  So entfernen Sie HTML-Tags mit regulären Ausdrücken

So entfernen Sie HTML-Tags mit regulären Ausdrücken

PHPz
PHPzOriginal
2023-04-24 14:49:152342Durchsuche

HTML-Tags sind bei der Entwicklung von Webanwendungen sehr wichtig. Insbesondere im Bereich der Frontend-Entwicklung werden HTML-Tags häufig verwendet, um das Layout, den Stil und das Erscheinungsbild von Websites zu erstellen.

Manchmal müssen wir jedoch Daten aus diesen Tags extrahieren oder verarbeiten, anstatt den Seiteninhalt anzuzeigen. In diesem Fall ist eine Möglichkeit erforderlich, HTML-Tags zu entfernen und einfachen Text zu extrahieren. Dieser Vorgang wird oft als „normales Entfernen von HTML-Tags“ bezeichnet.

In diesem Artikel stellen wir vor, wie Sie reguläre Ausdrücke verwenden, um HTML-Tags zu entfernen und einfachen Text zu extrahieren.

Reguläre Ausdrücke sind ein allgemeines Textverarbeitungstool, mit dem bestimmte Muster im Text gesucht und ersetzt werden können. In PHP, JavaScript und anderen Programmiersprachen können wir reguläre Ausdrücke verwenden, um Muster darzustellen, nach denen gesucht werden soll, und sie dann zum Verarbeiten von Text verwenden.

In diesem Artikel verwenden wir die preg_replace-Funktion von PHP, um HTML-Tags zu ersetzen. Diese Funktion akzeptiert drei Parameter: das zu ersetzende Muster, den zu ersetzenden Text und den zu scannenden Quelltext.

Hier ist ein Beispiel-PHP-Code, um Text aus HTML-Tags abzurufen, ohne reguläre Ausdrücke zu verwenden:

$html_text = '<p>这是一个段落。</p><div><h1>这是一个标题</h1></div>';

$text = strip_tags($html_text);

echo $text;

In diesem Beispiel übergeben wir eine Zeichenfolge mit HTML-Tags an die Funktion „strip_tags“ von PHP, um alle HTML-Tags zu entfernen. Diese Funktion ist eine integrierte Funktion von PHP und sehr einfach zu verwenden.

Eine andere Möglichkeit ist die Verwendung regulärer Ausdrücke. Hier ist ein PHP-Codebeispiel, das die preg_replace-Funktion zum Entfernen von HTML-Tags verwendet:

$html_text = '<p>这是一个段落。</p><div><h1>这是一个标题</h1></div>';

$pattern = '/<[^>]*>/';

$text = preg_replace($pattern, '', $html_text);

echo $text;

In diesem Beispiel verwenden wir das reguläre Ausdrucksmuster „/<1*>/“, um HTML-Tags abzugleichen. Dieses Muster weist die Engine für reguläre Ausdrücke an, jede Zeichenfolge abzugleichen, die mit „<“ beginnt und null oder mehr Nicht-„>“ enthält. Dieses Muster passt zu jedem HTML-Tag.

Da wir nun die Grundlagen regulärer Ausdrücke abgeschlossen haben, finden Sie hier einige komplexere Beispiele.

Bestimmtes Tag entfernen

Um ein bestimmtes HTML-Tag zu entfernen, können wir den Namen dieses Tags in den regulären Ausdruck einfügen. Um beispielsweise alle P-Tags zu entfernen, können wir den folgenden Code verwenden:

$pattern = '/<p[^>]*>/';

$text = preg_replace($pattern, '', $html_text);

In diesem Beispiel haben wir den Namen des „P“-Tags in das Muster eingefügt und ein Sternchensymbol verwendet, um anzugeben, dass das „

Wenn wir im obigen Code auch das Tag „/p“ entfernen möchten, können wir den folgenden Code verwenden:

$pattern = &#39;/<[/]?p[^>]*>/';

$text = preg_replace($pattern, '', $html_text);</p>
<p>In diesem Beispiel haben wir ein optionales schließendes Tag („< /p>“) hinzugefügt. und verwendet ein Fragezeichensymbol, um anzuzeigen, dass es optional ist. Dieses Muster entspricht den öffnenden und schließenden P-Tags. </p>
<p>Links extrahieren</p>
<p>Manchmal müssen wir bestimmte Daten aus HTML-Tags extrahieren. Beispielsweise müssen wir möglicherweise die URL aus einem Link-Tag extrahieren. Um einen Link zu extrahieren, können wir den folgenden Code verwenden: </p>
<pre class="brush:php;toolbar:false">$html_text = '<a href="http://www.example.com">这是一个链接</a>';

$pattern = '/<a\s+href="([^"]+)">([^<]+)<\/a>/i';

preg_match($pattern, $html_text, $matches);

$url = $matches[1];

echo $url;

In diesem Beispiel verwenden wir ein spezifischeres Muster, das einem „A“-Tag entspricht, und verwenden ein Untermuster, das sowohl die URL als auch das Linkwort extrahiert.

Im regulären Ausdruck verwenden wir den Modifikator „/i“, um die Groß-/Kleinschreibung bei der Übereinstimmung zu berücksichtigen. Dieser Modifikator ist sehr nützlich, wenn wir nach Attributen und Attributwerten von Tags suchen.

Zusammenfassung

In diesem Artikel haben wir reguläre Ausdrücke und ihre Anwendung beim Entfernen von HTML-Tags vorgestellt. Wir haben einige gängige Regex-Muster untersucht, darunter das Entfernen aller Tags, das Entfernen bestimmter Tags und das Extrahieren von Links.

Um ein guter Webentwickler zu werden, müssen wir ein tiefes Verständnis von HTML-Tags und regulären Ausdrücken haben. Die Verwendung regulärer Ausdrücke zum Entfernen von HTML-Tags kann unsere Effizienz und die Leistung von Webanwendungen erheblich verbessern.


  1. >

Das obige ist der detaillierte Inhalt vonSo entfernen Sie HTML-Tags mit regulären Ausdrücken. 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