Split - Delimiter Espace par défaut ? [Résolu]

Dpx26000 9 Messages postés vendredi 26 février 2010Date d'inscription 1 mars 2011 Dernière intervention - 1 mars 2011 à 10:25 - Dernière réponse : Dpx26000 9 Messages postés vendredi 26 février 2010Date d'inscription 1 mars 2011 Dernière intervention
- 1 mars 2011 à 15:00
Bonjour à tous,

Tout d'abord, et comme toujours je m'excuse d'avance si j'ai raté un sujet qui aurait pu m'éviter de créer celui-ci par la fonction recherche, car ça m'arrive quelques fois !

Mon problème est tout simple, je souhaite spliter une chaine de caractère. Jusque là ça va, mais voilà, le delimiter est un '+' mais ma chaine peut etre par exemple '3 chevaux+4 souris'

Voici ma procédure :

Procedure Split(Delimiter: Char; Str: string; ListOfStrings: TStrings) ;

begin
ListOfStrings.Clear;
ListOfStrings.Delimiter := Delimiter;
ListOfStrings.DelimitedText := Str;
end;


Voici ce que me retournerait la procédure :

nomsProd := TStringList.Create;
Split('+', tab_commande.Cells[2,i], nomsProd);

//nomsProd[0] : 3
//nomsProd[0] : chevaux
//nomsProd[0] : 4
//nomsProd[0] : souris


Même si je spéficie le delimiter comme étant un plus, il considère aussi que l'espace en est un. J'ai vu quelques messages qui parlait d'un StrictDelimiter mais j'utilise Delphi 7 et je ne connais pas une telle propriété.
Le problème n'est pas difficile donc j'aurais peut-être trouvé la solution d'ici là, mais je passe par vous car je sais que la qualité des réponses est exemplaire !

Un grand merci d'avance pour vos réponses,
Cordialement,

Aurel.
Afficher la suite 

2 réponses

Répondre au sujet
fbalien 265 Messages postés dimanche 7 décembre 2003Date d'inscription 11 novembre 2016 Dernière intervention - 1 mars 2011 à 13:09
+3
Utile
Bonjour

vous pouvez faire ceci
ListOfStrings.DelimitedText := '"' + stringreplace (Str ,Delimiter,'"' + Delimiter+'"',[rfReplaceAll])+'"'; 

A+
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de fbalien
Dpx26000 9 Messages postés vendredi 26 février 2010Date d'inscription 1 mars 2011 Dernière intervention - 1 mars 2011 à 15:00
0
Utile
Merci grandement, tout fonctionne correctement !!
A très vite sur Codes sources !!

Cordialement,
Aurel.
Commenter la réponse de Dpx26000

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.