[C#] Expressions régulières RegEx

Résolu
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017 - 31 juil. 2006 à 15:49
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017 - 1 août 2006 à 13:39
Bien pratique mais c'est un peu du chinois parfois ;p

Si on a des paramètres séparés par des virgules (,) mais que parfois certains ont en plus un espace autour des quotes (') ce qui donne :

string strParameters = "'ma valeur', 'titi','toto',        'tutut'";
System.Text.RegularExpressions.Regex    regSepar = new System.Text.RegularExpressions.Regex(",");
string []astrParameters = regSepar.Split (strParameters);

On obtient un tableau qui a gardé les espaces.
Il y a une option à rajouter pour les virer directement sans passer par du code en plus ?

Thx

4 réponses

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
1 août 2006 à 13:17
 ooops...

c'est pas \s*,\*s... mais \s*,\s* :)

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
3
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
31 juil. 2006 à 18:21
euh... question simple... pourquoi utiliser une regex pour faire un split ???


soit tu fais un :


string[] astrParameters = strParameters.Split(',');
et puis astrParameters[0].Trim();


soit tu utilises une RegExp qui supprime aussi les espaces  (comment ça c'est ta question ??? )




string strParameters = "'ma valeur', 'titi','toto',        'tutut'";
System.Text.RegularExpressions.Regex    regSepar = new System.Text.RegularExpressions.Regex(" \s*,\*s ");
string []astrParameters = regSepar.Split (strParameters);






Sébastien FERRAND
(

blog
)
Consultant Indépendant
[Microsoft MVP Visual C#]
0
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017
1 août 2006 à 11:46
bon premier essai, bien tenté mais ca marche pô.
J'ai rajouté le @ en tete de chaine pour que ca compile mais il renvoie qu'un parametre sur ton code :(
0
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017
1 août 2006 à 13:39
bon c'est sûr, c un peu du chinois leur syntaxe mais au final ca marche :) trop fort.
0
Rejoignez-nous