Maison >interface Web >Questions et réponses frontales >Comment supprimer les balises HTML avec des expressions régulières
Les balises HTML sont très importantes lors du développement d’applications Web. Surtout dans le domaine du développement front-end, les balises HTML sont souvent utilisées pour créer la mise en page, le style et l'apparence des applications.
Cependant, nous devons parfois extraire ou traiter les données de ces balises au lieu d'afficher le contenu de la page. Dans ce cas, il faut trouver un moyen de supprimer les balises HTML et d’extraire le texte brut. Ce processus est souvent appelé « suppression régulière des balises HTML ».
Dans cet article, nous présenterons comment utiliser des expressions régulières pour supprimer les balises HTML et extraire du texte brut.
Les expressions régulières sont un outil général de traitement de texte qui peut être utilisé pour rechercher et remplacer des modèles spécifiques dans le texte. En PHP, JavaScript et d'autres langages de programmation, nous pouvons utiliser des expressions régulières pour représenter des modèles à rechercher, puis les utiliser pour traiter du texte.
Dans cet article, nous utiliserons la fonction preg_replace de PHP pour remplacer les balises HTML. Cette fonction accepte trois paramètres : le motif à remplacer, le texte à remplacer et le texte source à numériser.
Voici un exemple de code PHP pour obtenir du texte à partir de balises HTML sans utiliser d'expressions régulières :
$html_text = '<p>这是一个段落。</p><div><h1>这是一个标题</h1></div>'; $text = strip_tags($html_text); echo $text;
Dans cet exemple, nous transmettons une chaîne contenant des balises HTML à la fonction strip_tags de PHP pour supprimer toutes les balises HTML. Cette fonction est une fonction intégrée de PHP et est très simple à utiliser.
Une autre façon consiste à utiliser des expressions régulières. Voici un exemple de code PHP utilisant la fonction preg_replace pour supprimer les balises HTML :
$html_text = '<p>这是一个段落。</p><div><h1>这是一个标题</h1></div>'; $pattern = '/<[^>]*>/'; $text = preg_replace($pattern, '', $html_text); echo $text;
Dans cet exemple, nous utilisons le modèle d'expression régulière "/<1*>/" pour faire correspondre les balises HTML. Ce modèle indique au moteur d'expression régulière de faire correspondre toute chaîne commençant par "<" et se terminant par ">" et contenant zéro ou plusieurs caractères non ">". Ce modèle correspondra à n’importe quelle balise HTML.
Maintenant que nous avons complété les bases des expressions régulières, voici quelques exemples plus complexes.
Supprimer une balise spécifique
Pour supprimer une balise HTML spécifique, nous pouvons inclure le nom de cette balise dans l'expression régulière. Par exemple, pour supprimer toutes les balises P, nous pouvons utiliser le code suivant :
$pattern = '/<p[^>]*>/'; $text = preg_replace($pattern, '', $html_text);
Dans cet exemple, nous avons inclus le nom de la balise "P" dans le modèle et utilisé un astérisque pour indiquer que le "
Dans le code ci-dessus, si nous souhaitons également supprimer la balise "/p", nous pouvons utiliser le code suivant :
$pattern = '/<[/]?p[^>]*>/'; $text = preg_replace($pattern, '', $html_text);</p> <p>Dans cet exemple, nous avons ajouté une balise de fermeture facultative ("< /p>") , et utilise un symbole de point d'interrogation pour indiquer qu'il est facultatif. Ce modèle correspondra aux balises P d’ouverture et de fermeture. </p> <p>Extraire des liens</p> <p>Parfois, nous devons extraire des données spécifiques des balises HTML. Par exemple, nous devrons peut-être extraire l'URL d'une balise de lien. Pour extraire un lien, nous pouvons utiliser le code suivant : </p> <pre class="brush:php;toolbar:false">$html_text = '<a href="http://www.example.com">这是一个链接</a>'; $pattern = '/<a\s+href="([^"]+)">([^<]+)<\/a>/i'; preg_match($pattern, $html_text, $matches); $url = $matches[1]; echo $url;
Dans cet exemple, nous utilisons un modèle plus spécifique qui correspond à une balise "A" et utilisons un sous-modèle pour extraire l'URL et lier Word.
Dans l'expression régulière, nous utilisons le modificateur "/i" pour rendre la correspondance insensible à la casse. Ce modificateur est très utile lorsque nous recherchons des attributs et des valeurs d'attribut de balises.
Résumé
Dans cet article, nous avons présenté les expressions régulières et leur application dans la suppression des balises HTML. Nous avons exploré certains modèles d'expression régulière courants, notamment la suppression de toutes les balises, la suppression de balises spécifiques et l'extraction de liens.
Pour devenir un bon développeur Web, nous devons avoir une compréhension approfondie des balises HTML et des expressions régulières. L'utilisation d'expressions régulières pour supprimer les balises HTML peut grandement améliorer notre efficacité et les performances des applications Web.
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!