String Tokeniser, Explode? [Delphi] - Delphi/Pascal - Programmation
Marsh Posté le 21-06-2002 à 09:54:22
ExtractStrings mais c'est chiant parce qu'il prend les séparateurs comme espaces si les éléments sont pas entre guillements.
Enfin faut lire l'aide...
Marsh Posté le 09-08-2002 à 15:17:58
AGA a écrit a écrit : salut existe 'til une fonction ds Delphi qu permet de séparer une chaine en plusieurs? comme Explode en PHP ou String Tokenizer en Java? |
Debutant en Delphi, j'ai trouvé sur un site ces 2 fonctions:
Explode et Implode
//----------------------------------------------------------
function Explode(ch : string;sep: string = ';':TStringList;
var
p : integer;
begin
p := pos(sep,ch);
explode := TStringList.Create;
while p > 0 do begin
explode.Add(copy(ch,1,p-1));
if p <= length(ch) then ch := copy(ch,p+ length(sep),length(ch));
p := pos(sep,ch);
end;
if length(ch)>0 then explode.Add(ch);
end;
//------------------------------
function Implode(lst:TStringList;sep : string =';':string;
var
i : integer;
s : string;
begin
i:= 0;
while i < lst.Count - 1 do begin
s := s + lst[i] + sep;
i := i + 1;
end;
if i < lst.Count then s := s + lst[i]; //Ne mets pas de séparateur sur le dernier élément
result := s;
end;
Bonne prog
A+
Marsh Posté le 09-08-2002 à 15:49:42
Si il a attendu la réponse, le mec il est patient
Marsh Posté le 09-08-2002 à 15:57:43
Zion a écrit a écrit : Si il a attendu la réponse, le mec il est patient |
La raison est que je viens de découvrir ce forum, il ya moins d'une heure
Marsh Posté le 09-08-2002 à 16:18:01
JackyG a écrit a écrit : La raison est que je viens de découvrir ce forum, il ya moins d'une heure |
Benh tu as répondu a un topic du 21 juin, c'est bien louable de répondre, mais la c'est surement trop tard
Au fait, rien de tel qu'un TStringList avec le CommaText, ou le DelimitedText
Marsh Posté le 10-08-2002 à 14:46:45
Zion a écrit a écrit : Benh tu as répondu a un topic du 21 juin, c'est bien louable de répondre, mais la c'est surement trop tard Au fait, rien de tel qu'un TStringList avec le CommaText, ou le DelimitedText |
sur un autre forum, j'avais posté une question début septembre, je viens de reçevoir la réponse par courriel....
j'ai fini le cours en janvier...
c'est quand même drôle
Marsh Posté le 06-12-2002 à 03:13:21
ReplyMarsh Posté le 15-02-2005 à 17:31:30
toc toc, cest moi (3 ans apres )
les fct explode et implode m'interressent mais c'est plein d'erreur
et je debute en delphi
help
Marsh Posté le 15-02-2005 à 20:05:36
on suppose que la variable s contient la chaîne à couper et que l'on veut couper sur des tirets :
Code :
|
Marsh Posté le 11-03-2006 à 08:03:45
up
j'arrive pas a faire marcher le bouzin si le delimiter contient plus d'un caractere
Marsh Posté le 11-03-2006 à 08:19:28
pour préciser un peu plus, je travaille avec les donnees de packet TCP correspondant a du traffic http, donc en gros j'ai des trucs de la forme
xxxxxxxx'#$D#$A'xxxxxxxxxxxxxxxxx'#$D#$A'xxxxxxxxxxxxxxxxx
edit: ce qui est byzarre, c'est que si j'affiche la chaine dans un showmessage, les retours a la ligne sont geres
Marsh Posté le 12-03-2006 à 08:54:54
ouais, j'ai reussi a faire un truc qui marche mais pas tres propre, en fait, ce sont surtout les quotes qui m'intriguent
si j'ai le temps + tard, je referrais un truc plus propre
Marsh Posté le 21-06-2002 à 09:47:24
salut existe 'til une fonction ds Delphi qu permet de séparer une chaine en plusieurs?
comme Explode en PHP ou String Tokenizer en Java?