Bonjour a tous!
Tout d'abord, voici ma fonction :
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
34
35
36
 
function Tform1.DonneCeQuiSuis(URL : string; debut:string;fin:string):string;
var HTTP : TIdHTTP;
    Content, Link : string;
    Positiondeb : integer;
    Positionfin : integer;
    longueur : integer;
begin 
  HTTP := TIdHTTP.Create(nil); 
  try
    //On recupere la page
    Content := HTTP.Get(URL);
    Positiondeb := 0;
    Positionfin := 0;
 
     //On trouve le debut du truc
     Positiondeb := PosEx(debut, Content, Positiondeb+1);
 
      //Si on trouve pas le mot,  on laisse tombé
      if Positiondeb = 0 then showmessage('Aucune instance trouvée!');
 
      //On cherche la fin de la chaine
       PositionFin := PosEx(fin, Content, PositionFin+1);
       longueur := PositionFin - (PositionDeb+length(debut));
 
       //On copy le mot cherché dans la variable link
 
          link := copy(Content, PositionDeb+length(debut), longueur);
          //On renvoie le resultat!
          Result := link;
 
 
  finally 
    HTTP.Free; 
  end; 
end;
Cette fonction recupere un morceaux d'une chaine que l'on lui donne (En l'occurence, ici une page html..
Tres pratique pour récupérer des infos...
Seulement voila
Par exemple, dans le texte suivant, je veux recupérer le mot attrapemoi
-------------------
blipblop attrapemoiblop blip
-------------------
Pas de probleme, je dit a la fonction de prendre ce qu'il y a entre blipblop et blopblip
Mais le probleme ce pose dans un texte comme celui la :
-------------------
blipattrapemoiblop
blipchopemoiblop
blipaccrochemoiblop
-------------------
Je veux recuperer ce qu'il y a entre blip et blop, le probleme, c'est que PosEx()
va s'arreter au premier blip.
Ainsi, je n'aurais que 'attrapemoi' mais pas 'chopemoi' et 'accrochemoi'

Si quelqun avais une methode, pour indiquer a posex, a la combiendième instance du mot il doit s'arreter...

Merci a vous!