Cherche fonction Delphi

cs_costello Messages postés 136 Date d'inscription lundi 2 septembre 2002 Statut Membre Dernière intervention 15 février 2006 - 27 sept. 2002 à 14:38
cs_Nono40 Messages postés 962 Date d'inscription mercredi 3 avril 2002 Statut Membre Dernière intervention 12 septembre 2006 - 27 sept. 2002 à 14:57
Je cherche une fonction qui renvoie la position d'une chaine dans une autre, mais qui ne s'arrête pas à la premiere occurence !

Pos( ) s'arrête dès qu'il a trouvé la position...

merci de m'aider
+

1 réponse

cs_Nono40 Messages postés 962 Date d'inscription mercredi 3 avril 2002 Statut Membre Dernière intervention 12 septembre 2006 2
27 sept. 2002 à 14:57
Il n'existe pas de fonction toute faite ( du moins il me semble... ), mais il est facile de le faire soi-même :

Function PosN(SubString,S:String;Nombre:Integer):Integer;
Var i,l:Integer;
Begin
l:=Length(SubString);
i:=0;
While (Nombre>0)And(i<=(Length(s)-l+l)) Do
Begin
Inc(i);
If Copy(S,i,l)=SubString Then Dec(Nombre);
End;
If Nombre=0 Then Result:=i
Else Result:=0;
End;

PosN s'utilise comme Pos avec en plus le numéro de l'occurence souhaitée. Elle renvoie la position de la Nième occurence ou 0 si la Nième n'existe pas.

--- :sleepy) Nono du Moulin :sleepy) ---
0
Rejoignez-nous