ホームページ > バックエンド開発 > PHPチュートリアル > PHP 正規表現: HTML 内のすべてのテキスト コンテンツを抽出する方法

PHP 正規表現: HTML 内のすべてのテキスト コンテンツを抽出する方法

WBOY
リリース: 2023-06-22 22:18:01
オリジナル
2476 人が閲覧しました
<p>Web 開発では、多くの場合、HTML からテキスト コンテンツを抽出する必要があります。現時点では、PHP の正規表現を使用してこの機能を実現できます。正規表現は文字列を照合するための言語であり、HTML マークアップの解析、テキストのフィルタリング、フォームの検証などに使用できます。 </p> <p> 以下では、PHP 正規表現を使用して HTML 内のすべてのテキスト コンテンツを抽出する方法を紹介します。 </p> <ol><li>HTML ファイルの内容を取得する</li></ol> <p>まず、PHP のファイル読み取り関数 <code>file_get_contents()</code> を使用して、HTML ファイルの内容を読み取る必要があります。たとえば、<code>example.html</code> という名前の HTML ファイルがあり、次のコードで読み取ることができます。 </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>$html = file_get_contents("example.html");</pre><div class="contentsignin">ログイン後にコピー</div></div><ol start="2"><li>正規表現の記述</li></ol><p>次に、HTML 内のテキスト コンテンツと一致する正規表現を記述する必要があります。 HTML では、テキスト コンテンツはタグの間に配置されており、タグを一致させることでテキスト コンテンツを抽出できます。 </p><p>次は、すべての HTML タグに一致する簡単な正規表現の例です: </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>$pattern = '/<[^>]*>/';</pre><div class="contentsignin">ログイン後にコピー</div></div><p>この正規表現の意味は次のとおりです: <code><</code> で始まる一致、シーケンス<code>></code> で終わる文字数 (間に <code>></code> 文字は含まれません)。 </p><p><code>preg_replace()</code> 関数を使用して、すべての HTML タグを空の文字列に置き換え、HTML 内のテキスト コンテンツを抽出できます。 </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>$text = preg_replace($pattern, '', $html);</pre><div class="contentsignin">ログイン後にコピー</div></div><ol start="3"><li>特殊文字のフィルタリング </li></ol><p>HTML 内のテキスト コンテンツを抽出した後、改行やタブなどの一部の特殊文字を除外する必要もあります。現時点では、PHP の <code>strip_tags()</code> 関数を使用して HTML 内のすべてのタグを削除し、<code>trim()</code> 関数を使用して文字列の両端の空白文字を削除できます。 </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>$text = strip_tags($text); $text = trim($text);</pre><div class="contentsignin">ログイン後にコピー</div></div><p>最後に、HTML 内のすべてのテキスト コンテンツを取得できます。 </p><p>完全なコードは次のとおりです。 </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>$html = file_get_contents("example.html"); $pattern = '/<[^>]*>/'; $text = preg_replace($pattern, '', $html); $text = strip_tags($text); $text = trim($text); echo $text;</pre><div class="contentsignin">ログイン後にコピー</div></div><p>概要</p> <p>PHP 正規表現を使用して HTML 内のテキスト コンテンツを抽出するのは一般的な操作です。上記の手順を導入することで、この機能を簡単に実装できます。ただし、正規表現は基本的なマッチング ツールにすぎず、複雑な HTML フラグメントの場合は、テキスト コンテンツを抽出するためにより複雑なマッチング メソッドが必要になる場合があることに注意してください。 </p>

以上がPHP 正規表現: HTML 内のすべてのテキスト コンテンツを抽出する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート