Maison > développement back-end > tutoriel php > Comment faire correspondre les caractères de nouvelle ligne dans les expressions régulières lors de la capture de texte entre les balises `` ?

Comment faire correspondre les caractères de nouvelle ligne dans les expressions régulières lors de la capture de texte entre les balises `` ?

Susan Sarandon
Libérer: 2024-11-01 06:00:03
original
233 Les gens l'ont consulté

How to Match Newline Characters in Regular Expressions When Capturing Text Between `` Tags?

Correspondance des caractères de nouvelle ligne dans les expressions régulières

Dans cette question, l'utilisateur vise à capturer du texte entre

et
balises. Cependant, l'expression régulière initiale /
(.*)
match n'a pas réussi à correspondre aux caractères de nouvelle ligne. Pour résoudre ce problème, le modificateur DOTALL` (/s) est nécessaire :

'/<div>(.*)<\/div>/s'
Copier après la connexion

En utilisant ce modificateur, le point (.) dans l'expression régulière peut correspondre aux caractères de nouvelle ligne.

Alternativement , une correspondance non gourmande (.*?) peut être utilisée :

'/<div>(.*?)<\/div>/s'
Copier après la connexion

Cela garantira que la correspondance s'arrête à la première occurrence de

.

S'il y a il n'y a aucune autre balise dans le

balises, l'expression régulière suivante peut être utilisée pour tout faire correspondre sauf < dans les balises :

'/<div>([^<]*)&<\/div>/'
Copier après la connexion

Cependant, il est important de noter que les divs imbriqués, les espaces supplémentaires, les commentaires HTML et d'autres complexités peuvent rendre difficile l'analyse HTML avec des expressions régulières. Pour une analyse fiable, il est conseillé d'utiliser un analyseur HTML à la place.

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.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
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