Expression réguliére !!!!

Résolu
cs_blueangel Messages postés 69 Date d'inscription samedi 4 janvier 2003 Statut Membre Dernière intervention 19 mars 2009 - 15 janv. 2007 à 11:11
cs_blueangel Messages postés 69 Date d'inscription samedi 4 janvier 2003 Statut Membre Dernière intervention 19 mars 2009 - 17 janv. 2007 à 11:30
Bonjour,






j'ai le probléme suivant dans l'utilisation d'une expression réguliére pour extraire le contenu qui existe entre les balise dans un texte hmtl






le code que j'utilise est le suivant:






 




string [] strTabBody; //Tableau contenant les Body des message cas de plusieurs Body






string sContenu ; //teste Html






MatchCollection MatchCase; //collection d'expresion qui valide l'expression réguliere




 




RegexOptions options = RegexOptions.Multiline | RegexOptions.IgnorePatternWhitespace | RegexOptions.Compiled;




 




//Expression Réguliere présentant la balise Body




 




Regex regSeparBody = new Regex(@"</?(?i:body)(.|\n)*?>*.</?(?i:body)(.|\n)*?>",options);




 




if(regSeparBody.IsMatch(sContenu))




 




{




 




MatchCase = regSeparBody.Matches(sContenu);




 




sContenu =MatchCase[0].Value.ToString();




 




}






return sContenu ;







j'ai un probléme quand le contenu des balises Body est le suivant :













 contenu entrant:



"
&nbsp;

----- Original Message -----
"





contenu sortant:








"f
&nbsp;

----- Original Message -----
"




-->le caratere f ne doit pas figurer dans le resultat finale.







Est ce qu'il y a une erreur dans l'expression réguliére ?








Merci pour votre aide!






blueangel

1 réponse

cs_blueangel Messages postés 69 Date d'inscription samedi 4 janvier 2003 Statut Membre Dernière intervention 19 mars 2009
17 janv. 2007 à 11:30
j'ai trouvé au cas ou quelqu'un rencontre le probléme.
sContenu= Regex.Replace(sContenu, @"</?(?i:body)(.|\n)*?>(?.*)</?(?i:body)(.|\n)*?>", "${inner_text}");

blueangel
3
Rejoignez-nous