Comment utiliser Regex pour extraire le corps d'un document html, en tenant compte du fait que les balises html et body peuvent être en majuscules, en minuscules ou peuvent ne pas exister?Extrait Regex html Corps
Répondre
N'utilisez pas une expression régulière pour cela - utilisez quelque chose comme Html Agility Pack.
Ceci est un analyseur HTML agile qui builds une lecture/écriture DOM et prend en charge XPATH plaine ou XSLT (vous avez réellement n'avez pas à comprendre XPATH ni XSLT pour l'utiliser, ne vous inquiétez pas. ..). C'est une bibliothèque de code .NET qui vous permet d'analyser les fichiers HTML "hors du web". L'analyseur syntaxique est très tolérant avec le code malformé "réel ". L'objet est très similaire à System.Xml, mais pour les documents HTML (ou streams).
Ensuite, vous pouvez extraire le body
avec un XPATH.
Je suis d'accord. Je l'ai utilisé et je dois dire que c'est rapide, propre et net. –
Cela devrait vous être assez près:
(?is)<body(?:\s[^>]*)>(.*?)(?:</\s*body\s*>|</\s*html\s*>|$)
Veuillez fournir une solution détaillée. – ShaileshDev
Que diriez-vous quelque chose comme ça?
Il capture tout ce qui se trouve entre <body></body>
étiquettes (insensible à la casse en raison de RegexOptions.IgnoreCase
) dans un groupe nommé theBody
.
RegexOptions.Singleline
nous permet de gérer plusieurs lignes HTML en une seule chaîne.
Si le code HTML ne contient pas de balises <body></body>
, la propriété Success
sera fausse.
string html;
// Populate the html string here
RegexOptions options = RegexOptions.IgnoreCase | RegexOptions.Singleline;
Regex regx = new Regex("<body>(?<theBody>.*)</body>", options);
Match match = regx.Match(html);
if (match.Success) {
string theBody = match.Groups["theBody"].Value;
}
- 1. fileName extrait en utilisant Regex
- 2. Extrait extraits avec PCRE regex
- 3. Extrait de texte Mysql avec Regex
- 4. Regex pour faire correspondre le contenu du corps HTML en PHP
- 5. extrait la balise de titre de html
- 6. glisser hors du corps html/div/tout
- 7. regex pour analyser html
- 8. Regex pour encodée HTML
- 9. php regex pour supprimer HTML
- 10. Extrait float/valeur double
- 11. Regex pour le remplacement d'attributs HTML/ajout
- 12. Extraire des données avec regex de html
- 13. espaces match Regex dans l'attribut html
- 14. regex pour l'analyse html (en C#)
- 15. Extrait tous les liens entre les balises HTML spécifié à partir d'un fichier html avec sed
- 16. javascript/jquery extrait Html-texte du tableau HTML contenant des balises d'entrée
- 17. extrait du texte de mht
- 18. extrait xpath
- 19. Recommandation de l'utilisateur Email Corps
- 20. Insérer datetime actuel dans Visual Studio Extrait
- 21. extrait de regex/remplace les valeurs des balises de type xml via des (sous) groupes nommés
- 22. Extrait de la chaîne
- 23. Recherche puis extrait
- 24. Extrait doctype avec simple_html_dom
- 25. Corps fonctionnel d'un programme
- 26. Comment extraire les liens du HTML en utilisant regex?
- 27. PHP: Escape Quotes SEULEMENT en dehors des balises HTML (Regex)
- 28. Regex pour correspondre aux propriétés de style HTML
- 29. RegEx pour l'extraction des propriétés de l'image HTML
- 30. Essayer de remplacer les balises HTML en utilisant regex
Duplicata de http://stackoverflow.com/questions/356340/expression-normale-pour-extraire-html-body-content? – M4N