Expression réguliére

cs_rikichi Messages postés 29 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 15 avril 2008 - 15 avril 2008 à 12:38
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 - 15 avril 2008 à 21:06
Bonjour

j'essai d'extraire le contenu des balises .......

avec l'expression suivante :

Pattern.compile("(.*)

");

le résultat rendu est vide

dois je ajouter quelquechose à cette expression ?!  Help pliz !!!

8 réponses

cs_rikichi Messages postés 29 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 15 avril 2008
15 avril 2008 à 12:57
Voici mon problem en detail :

j'ai une structure de la forme :
<p>
Welcome to the homepage of HTMLParser - a super-fast real-time
parser for real-world HTML. What has attracted most developers to HTMLParser has
been its simplicity in design, speed and ability to handle streaming real-world
html.
</p>
<p>
The two fundamental use-cases that are handled by the parser are
extraction and transformation

(the syntheses use-case, where HTML pages are created from scratch, is better
handled by other tools closer to the source of data). While prior versions
concentrated on data extraction from web pages, Version 1.4 of the
HTMLParser has substantial improvements in the area of transforming web
pages, with simplified tag creation and editing, and verbatim toHtml() method
output.
</p>

donc quad j'applique l'expression en haut ca donne RIEN !!

ok Mnt quand j'applique l'expression suivante :  "<[p|P]>(.*?)"

ca donne le résultat suivant :

The two fundamental use-cases that are handled by the parser are

comme vous voyez ca me donne juste la premiere phrase du deuxieme paragraphe  :s:s

si quelqu'un peut m'aider ca serai cool  ( c vraiment urgent !!)

bonne journée
0
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 38
15 avril 2008 à 13:11
Salut:

Comme tu as utilisé les groupement tu dois utiliser la méthode group(int) pour récupérer le contenu de la balise:

Pattern p = Pattern.compile("(.*)

");
Matcher m = p.matcher("Salut tous

");

while(m.find()) {
    String paragraph = m.group(1);
    System.out.println(paragraph);
}
0
cs_rikichi Messages postés 29 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 15 avril 2008
15 avril 2008 à 13:24
Ok ton example  marche bien

ok maintenant si on met ca :       Matcher m = p.matcher("      \n Salut \n tous

");

Ca marche plus :s:s

bonne journée
0
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 38
15 avril 2008 à 14:28
Salut:

Il faut dans ce cas spécifier le flag DOTALL:

Pattern p = Pattern.compile("(.*)

", Pattern.DOTALL);
Matcher m = p.matcher("\nSalut tous\n

");

while(m.find()) {
    String paragraph = m.group(1);
    System.out.println(paragraph);
}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_rikichi Messages postés 29 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 15 avril 2008
15 avril 2008 à 15:17
Merci pour ta réponse amigo:)

j'ai un autre problem si tu peux m'aider avec celui la j poserai plus de questions lol  :)
voila
supposons j'ai le code suivant

     blalalalalaalal
   dksdjsjds
   sdsjd

    ici

j'applique l'expression suivante :   "\\s([\\s|\\S]*)

"  pour capturer le contenu entre les balises et

mais lui  il donne comme résultat ce qui est entre la preeeeemiere balise   et laaaaa deeeeernieeere balise

c stressant  :s

vous avez une solutions pour ca SVP ?

merci
0
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 38
15 avril 2008 à 16:06
Salut:

Qu'est ce que tu veux extraire cette fois?
0
cs_rikichi Messages postés 29 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 15 avril 2008
15 avril 2008 à 16:26
le contenu de chaque paragraph

merci
0
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 38
15 avril 2008 à 21:06
Salut:

Est ce que la précédante expression régulière ne fait pas ce qui est demandé?
0