Problème de regex avec requête ...

alphacrash Messages postés 55 Date d'inscription jeudi 7 novembre 2002 Statut Membre Dernière intervention 17 août 2012 - 14 juil. 2008 à 16:19
cs_niky Messages postés 168 Date d'inscription jeudi 28 juin 2001 Statut Membre Dernière intervention 18 octobre 2008 - 14 juil. 2008 à 18:54
Salut, voilà mon problème:

Je parse une chaine comprenant des balises telles que La fonction qui effectue les regex:

        string toParse = textBox1.Text;
            string parse_gras = null;
            string parse_italique = null;
            string parse_link = null;
            string parse_img = null;
            string parse_img2 = null;
     
     

            Regex reg_gras = new Regex(@"(?<left>\{{)(?<name>[^}]+)(?<right>\}})");
            Regex reg_italique = new Regex(@"(?<left>\{)(?<name>[^}]+)(?<right>\})");
            //ne pas oublier de remtttre-> en -&gt;
            Regex reg_link = new Regex(@"(?<left>\[)(?<name>[^[]+)(?->)(?<link>[^]]+)(?<right>\])");
            //images
            Regex reg_img = new Regex(@"(?<left>\[^""]+)");

             
            //gras italique
            parse_gras = reg_gras.Replace(toParse, " $2 ");
            parse_italique = reg_italique.Replace(parse_gras, " $2 ");
             //liens
            parse_link = reg_link.Replace(parse_italique, "$2");
            //images
            parse_img = reg_img.Replace(parse_link, "");

            Match m = reg_img.Match(toParse);
            Group g = m.Groups[2];
            if (g.ToString() != "")
            {

          
               parse_img2 = reg_img2.Replace(parse_img, "Et celle qui retourne le chemin de l'image:

 public string chemin_image_spip(int id)
        {
        
          
            string chemin_image_spip = "";
            MySqlConnection connection = new MySqlConnection(MyConString);
            MySqlCommand command = connection.CreateCommand();
            MySqlDataReader Reader;
            command.CommandText = "select fichier FROM spip_documents WHERE id_document=" + id + "";
          
          
            connection.Open();
            Reader = command.ExecuteReader();
            while (Reader.Read())
            {
                chemin_image_spip = Reader.GetValue(0).ToString();
      
            }
          
               
                if (chemin_image_spip != null)
                {
                  
                    return chemin_image_spip.Substring(8, chemin_image_spip.Length - 8);
                   
                 
                }
                else
                {
                    return "";
                }
         
        }

J'avoue que je suis perdu...je ne vois pas comment faire pour avoir les chemins de toutes mes images...si j'ai une chaîne de ce type:

Machaine ressemble à et aussi à ça

Merci à tout le monde !

Coding is not a crime!

1 réponse

cs_niky Messages postés 168 Date d'inscription jeudi 28 juin 2001 Statut Membre Dernière intervention 18 octobre 2008 7
14 juil. 2008 à 18:54
Est-ce que l'emploi de la méthode Matches (en lieu et place de Match) ne résoudrait pas ton problème ?
0
Rejoignez-nous