Séparer un string dans un tableau [Résolu]

Messages postés
21
Date d'inscription
jeudi 23 avril 2009
Dernière intervention
4 août 2009
- - Dernière réponse : krimog
Messages postés
1863
Date d'inscription
lundi 28 novembre 2005
Dernière intervention
14 février 2015
- 27 avril 2009 à 14:53
Bonjour.

Je possède un string qui contient beaucoup d'informations (la conf d'un switch). Ces informations sont séparées chacune par un ou plusieurs espaces.

J'aimerai trouver un moyen pour qu'à chaque fois qu'il y ai un (ou plusieurs) espace(s)dans le string celui(ceux)-ci soit enlevé et qu'il n'y ait uniquement le texte de conservé.

En faisait string

[] tab = monstring.Split(
new
Char[] {
' ' });

cela me sépare bien tout dans le tableau mais ça conserve aussi les espaces !

Merci d'avance pour votre aide !
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
1863
Date d'inscription
lundi 28 novembre 2005
Dernière intervention
14 février 2015
36
3
Merci
string[] separateurs = new string[]{" ", "\n", "\r"}; // enlève le caractère vide.
string[] resultat = macadrtable.Split(separateurs, StringSplitOptions.RemoveEmptyEntries); // Change l'option. Celle là est faite spécialement pour ton problème ;)

Krimog : while (!(succeed = try())) ;
- Quand le règlement tu respecteras, ravis de te répondre on sera -
- NON, "LE BAR" n'est

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 124 internautes nous ont dit merci ce mois-ci

Commenter la réponse de krimog
Messages postés
1863
Date d'inscription
lundi 28 novembre 2005
Dernière intervention
14 février 2015
36
0
Merci
Salut

C'est très étonnant. Normalement, la méthode Split() ne conserve pas les caractères "splités". (et je viens de retester). Est-tu sûr que le caractère restant est bien le caractère "espace" ?

Krimog : while (!(succeed = try())) ;
- Quand le règlement tu respecteras, ravis de te répondre on sera -
- NON, "LE BAR" n'est PAS un langage de programmation ! -
Commenter la réponse de krimog
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
58
0
Merci
Bonjour,
Peut-être essayer avec
string[] s =
Regex.Split(
"my input",
@"\s+");

<hr />
-Blog-
-Site Perso-
Commenter la réponse de cs_Bidou
Messages postés
21
Date d'inscription
jeudi 23 avril 2009
Dernière intervention
4 août 2009
0
Merci
Tu avais raison krimog, le caractère à éliminer n'est en fait pas le caractère espace, mais le caractère vide ("") ! Je m'en suis aperçu en regardant mon tableau en mode debug.

Le problème est que si je rajoute '' (deux simples quotes) il me sort une erreur à la compilation ("littéral de caractère vide"). Je ne sais pas trop ce que ça veut dire :s
Commenter la réponse de alexbesn
Messages postés
21
Date d'inscription
jeudi 23 avril 2009
Dernière intervention
4 août 2009
0
Merci
J'ai essayé une autre méthode :


string monstringaseparer;




string

[] separateurs =


new





string

[] {


""

,


" "

,


"\n"

,


"\r"

};





string

[] resultat;

resultat = macadrtable.Split(separateurs,
StringSplitOptions.None);

Du coup j'ai pu mettre le caractère vide dans les paramètres cette fois, pourtant ça ne fonctionne toujours pas ...

Si ça peut aider, la variable monstringaseparer est un string qui contient tout le résultat d'une commande envoyé en telnet.
Commenter la réponse de alexbesn
Messages postés
21
Date d'inscription
jeudi 23 avril 2009
Dernière intervention
4 août 2009
0
Merci
Super c'était ça ! Merci beaucou t'es un chef !
Commenter la réponse de alexbesn
Messages postés
1863
Date d'inscription
lundi 28 novembre 2005
Dernière intervention
14 février 2015
36
0
Merci
De rien ;)

Bonne continuation

Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
Commenter la réponse de krimog

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.