Comment exclure les mots-clés correspondants dans des balises HTML spécifiques à l'aide d'expressions régulières en PHP ?

Mary-Kate Olsen
Libérer: 2024-10-20 13:30:29
original
339 Les gens l'ont consulté

How to Exclude Matching Keywords within Specific HTML Tags Using Regular Expressions in PHP?

Mots clés correspondants en dehors des balises d'ancrage HTML à l'aide d'expressions régulières en PHP

Mots clés correspondants dans un texte HTML peut être un défi, surtout lorsqu'il s'agit de éviter les correspondances dans des balises spécifiques telles que les balises d'ancrage (mot-clé" et "mot-clé déjà lié ".

La solution

Le code PHP fourni exploite une regex complexe pour obtenir le résultat souhaité :

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

Comprendre l'expression régulière

L'expression régulière comprend une expression principale et une anticipation négative :

Explication

L'expression régulière fonctionne en faisant d'abord correspondre le mot-clé. Elle utilise ensuite une analyse anticipée négative pour vérifier la présence d'une balise de fermeture sans balise intermédiaire. Si l'analyse anticipée réussit, cela signifie que le mot-clé est enfermé dans un élément d'ancrage. , donc la correspondance est rejetée. Sinon, l'expression principale correspond au mot-clé et elle est remplacée par le code HTML spécifié.

Implémentation

Le code fourni attribue la chaîne modifiée à la variable $str . L'expression régulière peut être modifiée selon les besoins pour correspondre à différents mots-clés ou balises HTML.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!