Maison >Java >javaDidacticiel >Les expressions régulières peuvent-elles analyser efficacement le HTML en Java ?

Les expressions régulières peuvent-elles analyser efficacement le HTML en Java ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-06 06:04:02718parcourir

Can Regular Expressions Effectively Parse HTML in Java?

Utilisation d'expressions régulières pour analyser le HTML en Java

L'identification des éléments HTML tels que les balises href et src peut être obtenue grâce aux expressions régulières, bien que ce soit souvent déconseillé. Si vous envisagez toujours cette approche, voyons comment la réaliser en Java :

Analyse avec des expressions régulières

Pour trouver les balises href, vous pouvez utiliser un regex comme :

Pattern p = Pattern.compile("<a.*?href=\"(.*?)\".*?>");

Pour trouver les balises src :

Pattern p = Pattern.compile("<img.*?src=\"(.*?)\".*?>");

Extraire les URL

Une fois que vous avez les modèles, vous pouvez les faire correspondre par rapport à votre chaîne HTML et capturez les groupes d'URL :

Matcher m = p.matcher(htmlString);
while (m.find()) {
  String url = m.group(1);
}

Recommandation

Cependant, il est fortement conseillé d'utiliser un analyseur HTML au lieu d'expressions régulières. La structure HTML est complexe et les expressions régulières peuvent souvent négliger les cas extrêmes. Un analyseur HTML dédié comme JSoup est beaucoup plus apte à interpréter le HTML et à extraire de manière fiable les éléments souhaités.

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