none
Tuto/Cours regex ? RRS feed

  • Question

  • Bonjour,

    Je souhaiterais savoir où est-ce que je peux me renseigner pour bien comprendre le fonctionnement de regex s'il vous plait.

    Par exemple je souhaiterais récupérer dans du code html ce qu'il y a entre 2 balises <br /> (exactement "<br />" avec l'espace).
    Ou encore supprimer une balise lien et récupérer que le texte du lien : "avant <a href="http://url">texte</a> après" donnerait "avant texte après".

    Merci beaucoup

    vendredi 9 septembre 2011 12:24

Réponses

  • Voici à mon goût le meilleur tuto (et outil) existant pour les regex : 

    http://www.codeproject.com/KB/dotnet/regextutorial.aspx

     

     récupérer dans du code html ce qu'il y a entre 2 balises <br /> (exactement "<br />" avec l'espace).

    Regex reg=new Regex("<br\s/>(?<data>.*?)<br\s/>", RegexOptions.SingleLine)

    tu trouveras le résultat dans 

     

    var match=reg.Match(html);

    if(match.Success)

    {

    var data=match.Group("data").Value;

    }

     

    supprimer une balise lien et récupérer que le texte du lien : "avant <a href="http://url">texte</a> après" donnerait "avant texte après"

    string result = Regex.Replace(text, @"<[^>]+>",(m)=>"");

    voila !


    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue
    vendredi 9 septembre 2011 20:52
    Modérateur

Toutes les réponses

  • Voici à mon goût le meilleur tuto (et outil) existant pour les regex : 

    http://www.codeproject.com/KB/dotnet/regextutorial.aspx

     

     récupérer dans du code html ce qu'il y a entre 2 balises <br /> (exactement "<br />" avec l'espace).

    Regex reg=new Regex("<br\s/>(?<data>.*?)<br\s/>", RegexOptions.SingleLine)

    tu trouveras le résultat dans 

     

    var match=reg.Match(html);

    if(match.Success)

    {

    var data=match.Group("data").Value;

    }

     

    supprimer une balise lien et récupérer que le texte du lien : "avant <a href="http://url">texte</a> après" donnerait "avant texte après"

    string result = Regex.Replace(text, @"<[^>]+>",(m)=>"");

    voila !


    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue
    vendredi 9 septembre 2011 20:52
    Modérateur
  • Encore une fois rien à dire, nikel, merci beaucoup
    samedi 10 septembre 2011 10:40