ホームページ >バックエンド開発 >PHPチュートリアル >PHP 正規表現を使用して HTML タグの外側のテキストを安全に置き換える方法

PHP 正規表現を使用して HTML タグの外側のテキストを安全に置き換える方法

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-26 16:08:13394ブラウズ

How to Safely Replace Text Outside HTML Tags Using PHP Regular Expressions?

PHP 正規表現で HTML タグ内の一致を除外する方法

HTML ドキュメントで正規表現の検索と置換を実行する場合、置換によって HTML タグが誤って変更されないようにするためです。この課題に対処するために、PHP 正規表現で先読みアサーションを使用した解決策を次に示します。

$pattern = "/(asf|foo|barr)(?=[^>]*(<|$))/";

説明:

  • パターン グループ化: パターンは 3 つの可能な検索語 (asf、foo、barr) を囲みます。
  • 先読みアサーション: 先読みアサーション (?=[^>]*(<|$)) は、その後に任意の数の検索語が続く検索語の出現に一致します。非>

その結果、この正規表現は HTML タグ内で発生する一致を無視し、HTML への望ましくない変更を効果的に防止します。構造。この式を preg_replace() 内で使用すると、HTML タグの外側のテキストを選択的にターゲットにすることができます。

たとえば、次の HTML テキストについて考えてみましょう。

<a href="example.com" alt="yasar home page">yasar</a>

preg_replace() 関数を提供されたパターンを使用すると、アンカー タグの外側にある yasar をカスタムの span タグに置き換えることができます。 in:

<a href="example.com" alt="yasar home page">yasar</a>
yasar

この例では、アンカー タグ内の alt 属性は変更されません。

以上がPHP 正規表現を使用して HTML タグの外側のテキストを安全に置き換える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。