RegularSubExpression (rtl)

De Wiki1000
(Différences entre les versions)
(Page créée avec « <source lang='delphi'>Function RegularSubExpression(const aSource:string; const aExpression:string; aResult:TStrings):integer;</source> Cette fonction parse une chaine su... »)
 
m
 
Ligne 28 : Ligne 28 :
 
begin
 
begin
 
  vStrList := TStringList.Create;
 
  vStrList := TStringList.Create;
 
 
  vCount := RegularSubExpression(aStr, aExprReg, vStrList);
 
  vCount := RegularSubExpression(aStr, aExprReg, vStrList);
 
  if (aIndex > 0) and (aIndex <= vCount) then
 
  if (aIndex > 0) and (aIndex <= vCount) then

Version actuelle en date du 20 septembre 2018 à 17:23

Function RegularSubExpression(const aSource:string; const aExpression:string; aResult:TStrings):integer;

Cette fonction parse une chaine suivant une expression régulière et retourne les différents tokens uniques identifiés dans une liste de chaîne en incluant les sous expressions.

La 1ère chaîne retournée étant le motif.

Result Nombre de tokens identifiés.
aSource Chaine de caractère à parser.
aExpression Expression régulière.
aResult Liste de chaîne recevant les tokens.

Exemple

//Function RegExpDonneeBaliseFormatEx(aStr:string; aExprReg:string; aIndex:Integer):string;
var vStrList : TStringList;
    vCount   : Integer; 
begin
 vStrList := TStringList.Create;
 vCount := RegularSubExpression(aStr, aExprReg, vStrList);
 if (aIndex > 0) and (aIndex <= vCount) then
   Result := vStrList.Strings[aIndex-1]
 else
   Result := ''; 
end;

Voir aussi:

Développement DSMDéveloppement DSM

Outils personnels