Maison > développement back-end > tutoriel php > Comment supprimer les balises HTML d'une chaîne en PHP à l'aide d'expressions régulières

Comment supprimer les balises HTML d'une chaîne en PHP à l'aide d'expressions régulières

WBOY
Libérer: 2023-06-22 22:56:01
original
651 Les gens l'ont consulté

En PHP, les expressions régulières peuvent être utilisées pour supprimer facilement les balises HTML des chaînes. Les balises HTML sont généralement des langages de balisage entourés de crochets angulaires et sont utilisées pour représenter divers contenus dans des pages Web, tels que des titres, des paragraphes, des images, des liens, etc. Cependant, à un moment donné, nous devrons peut-être supprimer les balises HTML de la chaîne pour un meilleur traitement et une meilleure présentation des données. Voyons comment utiliser les expressions régulières pour accomplir cette tâche en PHP.

Tout d’abord, soyons clairs : utiliser des expressions régulières pour traiter les balises HTML n’est pas une solution parfaite. Bien que les expressions régulières soient très puissantes, il existe de nombreuses formes et utilisations différentes des balises HTML. Par conséquent, les expressions régulières peuvent ne pas couvrir toutes les situations. Par conséquent, nous devons peser le pour et le contre et choisir la méthode la plus appropriée en fonction des besoins spécifiques et des caractéristiques des données.

Maintenant, examinons quelques expressions régulières couramment utilisées pour supprimer les balises HTML des chaînes.

  1. Supprimer toutes les balises HTML

Cette méthode peut supprimer toutes les balises HTML de la chaîne, ne laissant que le contenu en texte brut. Il utilise une expression régulière très simple :

$text = preg_replace('/<[^>]*>/', '', $text);
Copier après la connexion

La signification de cette expression régulière est : correspond à n'importe quelle chaîne commençant par "<" et se terminant par ">", où ">" est précédé de " 1 " signifie n'importe quel caractère sauf ">", "" signifie qu'il peut apparaître n'importe quel nombre de fois.

  1. Supprimer les balises HTML spécifiées

Si vous ne souhaitez pas supprimer toutes les balises HTML, mais souhaitez simplement supprimer certaines balises spécifiées, vous pouvez utiliser l'expression régulière suivante :

$text = preg_replace('/<(/)?(p|ul|ol|li|strong|em)>/', '', $text);
Copier après la connexion

La signification de cette expression régulière est : match Chaînes de la forme : "

", "

", "
    ", "
", "
    ", "
" "
  • ", "
  • ", "", "", "" et "". Où "(/) ?" représente un symbole barre oblique facultatif, utilisé pour correspondre aux balises de fermeture telles que "/p" et "/ul". "(p|ul|ol|li|strong|em)" représente un nom de balise facultatif, où "|" représente un OU logique.

    1. Conserver les balises HTML spécifiées

    Contrairement à la suppression des balises HTML spécifiées, nous pouvons parfois avoir besoin de conserver certaines balises spécifiées et de supprimer d'autres balises. À ce stade, vous pouvez utiliser l'expression régulière suivante :

    $text = preg_replace('/<(?!p|a)(/)?[^>]*>/', '', $text);
    Copier après la connexion

    La signification de cette expression régulière est : correspond à n'importe quelle chaîne commençant par "<", où "(?!p|a)" signifie exclure "". "1*" désigne n'importe quel caractère sauf ">".

    1. Supprimer les balises HTML et leur contenu

    Parfois, nous souhaitons non seulement supprimer les balises HTML elles-mêmes, mais également leur contenu. À l'heure actuelle, vous pouvez utiliser l'expression régulière suivante :

    $text = preg_replace('/<[^>]*>.*?</[^>]*>/', '', $text);
    Copier après la connexion

    La signification de cette expression régulière est : correspond à tout ce qui commence par "<", se termine par ">", et contient des caractères au milieu jusqu'à "< " et " Une chaîne qui apparaît en combinaison avec /". Parmi eux, ".*?" représente n'importe quel nombre de caractères arbitraires, et "?" représente une correspondance non gourmande pour éviter une correspondance excessive.

    Résumé :

    L'utilisation d'expressions régulières pour traiter les balises HTML peut nous aider à supprimer ou à conserver rapidement les balises spécifiées. Cependant, il est important de noter que les expressions régulières ne conviennent pas toujours à toutes les situations. Pour des besoins particuliers ou des formats de données particuliers, des ajustements et des optimisations doivent être effectués en fonction de circonstances spécifiques. Maîtriser les expressions régulières nécessite du temps et de l'énergie en apprentissage et en pratique, mais une fois que vous maîtrisez cette compétence, vous pouvez rapidement traiter et afficher les données, améliorant ainsi l'efficacité et l'expérience utilisateur.


    1. >

      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!

    Étiquettes associées:
    source:php.cn
    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
    Tutoriels populaires
    Plus>
    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal