Renvoyer ce qu'il y a avant une string, apres une string ou entre deux strings, dans une string

Soyez le premier à donner votre avis sur cette source.

Snippet vu 4 770 fois - Téléchargée 37 fois


Contenu du snippet

Ce petit code comporte trois fonctions qui vous renvoient ce qu'il y a avait une string, apres une string ou entre deux strings, cela peut servir aux debutants comme moi.
C'est un de mes 1ers codes delphi, et ce n'est autre que la reprise de mon meme code en vb . Soyez souples :)

Source / Exemple :


function avant(str : string;source : string) : string;
 var
 n : integer;
  begin
     n := pos(str,source);
     avant := copy(source,1,n - 1);
  end;

  function apres(str : string;source : string) : string;
var
 n : integer;
  begin
    n := pos(str,source);
    apres := copy(source,n + length(str),length(source));
  end;

   function entre(strav : string;strap : string;source : string) : string;
  begin
    entre := avant(strap,apres(strav,source))   ;
  end;

Conclusion :


(merci à celiphane de vbfrance pour l'idée certe simple de la nouvelle methode du entre, je n'aurais pas su retranscrire la mienne en delphi aussi rapidement)

A voir également

Ajouter un commentaire Commentaires
Messages postés
1
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
26 mai 2006

Pour info, "LeftStr" et "RightStr" implique d'utiliser l'unité "StrUtils"...
Messages postés
939
Date d'inscription
vendredi 25 octobre 2002
Statut
Membre
Dernière intervention
27 janvier 2009
2
ah cette fois je savais pas que cette fonction existait lol! (parcqu'on m'a mis un comment' assez semblabe sur la source en vb, j'utilisais un mid qui est l'equivalent de copy en delphi alors qu'il y a left et right lol) . en tout cas merci, ca me servira.
Messages postés
962
Date d'inscription
mercredi 3 avril 2002
Statut
Membre
Dernière intervention
12 septembre 2006
2
Note que :
Copy(Source,1,n-1)
peut être remplacé par LeftStr(Source,n-1) et
copy(source,n + length(str),length(source))
peut être remplacé par RightStr(Source,n+length(Str))

Nono.

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.