Plusieurs façons. Cela dépend vraiment de l'acte lui-même et que le balisage HTML est cohérent ou pas. Dans cet exemple particulier, vous pourriez obtenir le tdenfant de nœuds par Élément #childNodes() puis de tester chaque nœud individuellement si c'est un TextNode ou pas.
E. g.
Element td = getItSomehow();for(Node child : td.childNodes()){if(child instanceofTextNode){System.out.println(((TextNode) child).text());}}
qui résultats dans
TextA
TextB
Je pense que ce serait bien si Jsoup offert un Element#textNodes() ou quelque chose pour amener l'enfant nœuds de texte comme Element#children() fait pour obtenir les éléments d'enfant (qui aurait retourné le <br /> élément dans votre exemple).
J'ai mis en place l'Élément#textNodes() pour la 1.6.2, merci pour la suggestion. github.com/jhy/jsoup/commit/... Vous êtes un épargnant de vie! Je ne peux pas vous remercier assez pour votre travail acharné. Votre code et les commentaires sont parfaits et ont m'a sauvé des heures de Google et de StackOverflow.
Plusieurs façons. Cela dépend vraiment de l'acte lui-même et que le balisage HTML est cohérent ou pas. Dans cet exemple particulier, vous pourriez obtenir le
td
enfant de nœuds par Élément#childNodes()
puis de tester chaque nœud individuellement si c'est unTextNode
ou pas.E. g.
qui résultats dans
Je pense que ce serait bien si Jsoup offert un
Element#textNodes()
ou quelque chose pour amener l'enfant nœuds de texte commeElement#children()
fait pour obtenir les éléments d'enfant (qui aurait retourné le<br />
élément dans votre exemple).Vous êtes un épargnant de vie! Je ne peux pas vous remercier assez pour votre travail acharné. Votre code et les commentaires sont parfaits et ont m'a sauvé des heures de Google et de StackOverflow.
OriginalL'auteur BalusC