Chaine de caractere

cs_Crasher Messages postés 12 Date d'inscription dimanche 28 juillet 2002 Statut Membre Dernière intervention 24 décembre 2004 - 3 sept. 2004 à 18:01
florenth Messages postés 1023 Date d'inscription dimanche 1 août 2004 Statut Membre Dernière intervention 17 août 2008 - 4 sept. 2004 à 12:09
Salut je suis débutant voila mon probleme :

j ai par exemple cette chaine :

"salut je m"appele fab"

je voudrais recuprer juste : "salut" comment dois je m'y prendre

merci @+

8 réponses

jlmcom Messages postés 57 Date d'inscription mercredi 4 août 2004 Statut Membre Dernière intervention 3 décembre 2004 2
3 sept. 2004 à 19:17
1. C'est la fonction Copy(chaine,départ, longueur)
Dans ton code, tu tappes copy et avec le curseur sur le mot, tu appelles l'aide par la touche F1. Tu auras des explications et exemple.

2. sur le forum, Utilise rechercher du forum, de nombreuses réponses tu auras.

Bon courrage. :)
jlmcom
0
Loulibier Messages postés 309 Date d'inscription jeudi 6 juin 2002 Statut Membre Dernière intervention 24 septembre 2008 2
3 sept. 2004 à 20:23
Salut Crasher,

pour completer la réponse de jlmcom, tu peux aussi intégrer la recherche d'une occurence, comme ici 'salut' avec la fuction Pos.
Cette function te permet de pointer à la position du premier caractère du mot que tu recherches.

Exemple :
  index := Pos('salut', Chaine);

  if index > 0 then
    Result := Copy(Chaine,index, Length('salut'));


Bonne Prog,

Olivier.
0
cs_Crasher Messages postés 12 Date d'inscription dimanche 28 juillet 2002 Statut Membre Dernière intervention 24 décembre 2004
4 sept. 2004 à 08:14
ok merci beaucoup et si ensuite je veux recuperer tout ce qu'il y a apres salut? sans connaitre ce qu'il y a apres bien sur c'est aleatoire :)
0
Hnimsgern Messages postés 48 Date d'inscription mercredi 18 décembre 2002 Statut Membre Dernière intervention 4 mars 2005
4 sept. 2004 à 09:47
Function GetRightString(Source,Search:String):string;
Var Pos:integer;
begin
Pos:=AnsiPos(Search,Source);
result:=RightStr(Source,StrLen(PAnsiChar(Source))-
StrLen(PAnsiChar(Search))-Pos+1);
end;
Par exemple : Label1.Caption:=GetRightString ('abcd123efg','123'); //retourne 'efg'.
HN
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Crasher Messages postés 12 Date d'inscription dimanche 28 juillet 2002 Statut Membre Dernière intervention 24 décembre 2004
4 sept. 2004 à 11:45
merci beaucoup !
0
cs_Crasher Messages postés 12 Date d'inscription dimanche 28 juillet 2002 Statut Membre Dernière intervention 24 décembre 2004
4 sept. 2004 à 11:50
undeclared identifer RightStr
0
cs_Crasher Messages postés 12 Date d'inscription dimanche 28 juillet 2002 Statut Membre Dernière intervention 24 décembre 2004
4 sept. 2004 à 12:00
comprends pas , cette fonction existe pourtant
0
florenth Messages postés 1023 Date d'inscription dimanche 1 août 2004 Statut Membre Dernière intervention 17 août 2008 3
4 sept. 2004 à 12:09
Il faut rajouter StrUtils dans la clause "Uses".
PS : Essye d'utiliser Length(Source) cela evite de faire le transtypage en PAnsiChar.
Cela donne :
Function GetRightString(Source,Search:String):string;
Var Pos:integer;
begin
Pos:=AnsiPos(Search,Source);
result:=RightStr(Source,Length((Source)-StrLenSearch)-Pos+1);
end;

Par exemple : Label1.Caption:=GetRightString ('abcd123efg','123'); //retourne 'efg'.


et :
uses [...] , StrUtils;


Ps aux webmasters : on ne peut pas mettre de code dans une question.

Si tu ne te plantes pas ......
tu ne poussera jamais
0
Rejoignez-nous