Extraire un chifre d'un string après une certaine position

Contenu du snippet

Petite fonction qui peu servir
par exemple vous avez un string du style 'blablabla X=52 Y=13 blablabla'
Avec cette fonction vous pourrez extraire facilement 52 et 13

Source / Exemple :


function ExtraireChiffreApres(Source: string; Dep: integer): integer;
var
a:integer;
valu:char;
num:string;
premier:boolean;
begin
Num :='';
Result := 0;
premier:=false;

for a:=Dep to Length(Source)-1 do begin
 valu := copy(Source,a,1)[1];

 if valu in ['0'..'9','-']  then begin
   num := num + Valu;
   premier:=true;
 end else if premier=true then begin
   Result := strtointDef(num);
   exit;
 end;

end;

end;

Conclusion :


Exemple:
Txt := 'blablabla X=52 Y=13 blablabla';
PositonX := pos('X',copy(Txt,1,Length(Txt)));
PositonY := pos('Y',copy(Txt,1,Length(Txt)));
ExtraireChiffreApres(Txt,PositionX) renvera 52
ExtraireChiffreApres(Txt,PositionY) renvera 13

voila
PS : la fonction ne renvoi que des entier, je vai essayer de la faire fonctionner avec des reel

A voir également

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.