Maison >développement back-end >tutoriel php >Pratique des expressions régulières PHP : suppression des balises HTML

Pratique des expressions régulières PHP : suppression des balises HTML

WBOY
WBOYoriginal
2023-06-22 15:51:151257parcourir

PHP est un langage de script principalement utilisé pour la programmation Web. Il est largement utilisé dans la production de pages Web, notamment dans le traitement des données, la vérification des entrées et la production de pages. Les expressions régulières sont l'un des outils fréquemment utilisés par les programmeurs PHP. Cet article explique comment utiliser les expressions régulières PHP pour effacer les balises HTML.

La balise HTML est l'un des éléments nécessaires dans les pages Web, mais dans certains cas, il est nécessaire d'effacer les balises HTML dans les pages Web pour obtenir du contenu en texte brut, par exemple pour obtenir le contenu du corps de sites Web d'actualités.

Le processus d'utilisation des expressions régulières PHP pour effacer les balises HTML est le suivant :

  1. Les balises HTML dans le fichier sont essentiellement de deux types :

(1) Balises de texte brut, telles que e388a4556c0f65e1904146cc1a846bee, ea5af97ebad8930c73881432de3ef790, etc., leur fonction est d'être un conteneur qui peut être composé de balises parents et de balises enfants.

  1. Tout d'abord, utilisez la fonction preg_replace de PHP pour trouver toutes les balises HTML :
<?php
//需要处理的字符串
$str = "<p>这里有一些 <b>加粗</b> 以及一些 <i>斜体</i> 内容。<br/></p>";
//使用正则表达式删除字符串中的 HTML 标记
$str = strip_tags($str);
echo $str; //输出:这里有一些 加粗 以及一些 斜体 内容。
?>

La fonction strip_tags est utilisée dans le code ci-dessus pour remplacer les balises HTML. Strip_tags est une fonction de chaîne de PHP, utilisée pour supprimer les balises HTML dans les chaînes. Le premier paramètre de cette fonction est la chaîne à traiter, et le deuxième paramètre est la balise HTML à conserver.

  1. Ensuite, vous pouvez obtenir du texte brut sans balises HTML.

La méthode ci-dessus peut essentiellement effacer les balises HTML, mais dans le processus réel, certaines situations particulières peuvent se produire, telles que les balises de commentaires, etc. Par conséquent, une manière plus rigoureuse consiste à utiliser des expressions régulières (expression régulière) pour effacer les balises HTML. Ce qui suit est une méthode d'implémentation de base :

<?php
//需要处理的字符串
$str = "<p>这里有一些 <b>加粗</b> 以及一些 <i>斜体</i> 内容。<br/></p>";
//使用正则表达式删除字符串中的 HTML 标记
$str = preg_replace("/<.+?>/i","", $str);
echo $str; //输出:这里有一些 加粗 以及一些 斜体 内容。
?>

Le code ci-dessus utilise la fonction preg_replace de PHP et transmet les paramètres "/23b98557c384db5f8b26347a6dd083f3/i" qui est une expression régulière. La signification de cette expression régulière est la suivante :

(1)07ab6802d90046259098e9827df1b78c est le symbole de syntaxe qui correspond aux balises HTML ;

(2).+? correspond à n'importe quel caractère entre crochets, au moins plusieurs fois.

La méthode d'utilisation d'expressions régulières pour supprimer les balises HTML dans les chaînes est plus rigoureuse et fiable que la fonction strip_tags, et peut être appliquée à des codes HTML plus complexes.

Dans les applications pratiques, les balises HTML claires sont généralement utilisées avec d'autres méthodes de traitement de texte, telles que l'extraction de mots clés, le résumé de texte, etc. En raison de l'incertitude du format HTML, il est souvent nécessaire d'utiliser la méthode d'élimination pour le traitement. Si vous avez besoin d'une méthode de traitement plus rigoureuse, vous pouvez utiliser des outils tels que html2text pour obtenir des résultats plus précis.

En bref, la suppression des balises HTML par expression régulière PHP est une méthode de traitement de données de base et l'une des compétences essentielles pour les développeurs et les data scientists.

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!

Déclaration:
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