ホームページ  >  記事  >  バックエンド開発  >  PHP 正規表現を使用して、アンカー タグ内のキーワードを除くキーワードを照合するにはどうすればよいですか?

PHP 正規表現を使用して、アンカー タグ内のキーワードを除くキーワードを照合するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-20 13:32:02596ブラウズ

How to Use PHP Regular Expressions to Match Keywords Excluding Those in Anchor Tags?

PHP 正規表現を使用して HTML アンカー タグの外側のキーワードを一致させる方法

PHP では、HTML コンテンツ内の特定のキーワードの一致と置換を実現できます。正規表現を使用します。一般的なシナリオは、HTML アンカー タグ内のキーワードの出現を除外しながらキーワードを一致させる必要があることです。次の要件を考慮してください。

この課題に対処するには、キーワードの一致がアンカー タグの外側でのみ発生するようにする PHP の正規表現ソリューションを採用できます。

次のコード スニペットは、これを実現する方法を示しています。

<code class="php">$str = preg_replace('~Moses(?!(?>[^<]*(?:<(?!/?a\b)[^<]*)*)</a>)~i',
                    '<a href="novo-mega-link.php"></a>', $str);</code>

説明:

この正規表現の中核となるコンポーネントは否定先読みです。この先読みでは、終了アンカー タグ「」と開始アンカー タグ「」の存在をこの順序でチェックします。このパターンが見つかった場合、先読み内の式は true とみなされ、キーワードの一致はキャンセルされます。

したがって、正規表現により、キーワードが HTML アンカー タグの外側にある場合にのみ一致が行われることが保証されます。これにより、後でキーワードを、指定された URL にリンクするアンカー タグに置き換えることができます。

以上がPHP 正規表現を使用して、アンカー タグ内のキーワードを除くキーワードを照合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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