bonjour
j'ai une chaine de caractères de la forme:
MyString := 'param1=%par1¶m2=%par2¶m3=%par3'
ou encore
MyString := 'param1=%par1%par2¶m3=%par3'
je veux extraire automatiquement mes paramètres par1, par2, par3.. sachant que chaque paramètre commence par un '%' et se termine
- ou par un '&'
- ou par un '%'
- ou par un ''(chaine vide)
g chopé cette méthide sur le forum:
cette fonction marche nickel.. mais g pas su l'adapter à mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 procedure extraireMots(s : string; into : TStrings; viderListe : boolean = false; sep : TSysCharSet = ['%' , '&']); var i, n : integer; currentWord : string; begin if viderListe then into.Clear; n := length(s); i := 1; try while (i <= n) do begin currentWord := ''; { on saute les séparateurs } while (i <= n) and (s[i] in sep) do inc(i); { récupération du mot courant } while (i <= n) and not (s[i] in sep) do begin currentWord := currentWord + s[i]; inc(i); end; if (currentWord <> '') then into.Add(currentWord); end; except on e:Exception do ShowMessage(e.Message); end; end;
qqn a til une idée?.. merci
Partager