RegularExpression (rtl)

De Wiki1000
(Différences entre les versions)
m
m
Ligne 25 : Ligne 25 :
 
     Count    : Integer;
 
     Count    : Integer;
 
begin
 
begin
  vStrList := TStringList.Create;
+
  vStrList := TStringList.Create;  
+
 
  vCount := RegularExpression(aStr, aExprReg, vStrList);
 
  vCount := RegularExpression(aStr, aExprReg, vStrList);
  

Version du 20 septembre 2018 à 17:23

Function RegularExpression(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 identifiés dans une liste de chaîne excluant les sous-expressions.

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

Exemple

//Function RegExpDonneeBaliseFormat(aStr:string; aExprReg:string):string;
var vStrList : TStringList;
    Count    : Integer;
begin
 vStrList := TStringList.Create; 
 vCount := RegularExpression(aStr, aExprReg, vStrList);
 
 if (vCount=0) then
   Result := ''
 else if (vStrList.count=1) then
   result := vStrList.Strings[0]
 else
   raise ERule.Create(Format(_TP('Exception RegExpDonneeBaliseFormat , donnée lue : "%s", expression : "%s", retourne plusieurs réponses'),[varDonneeLue, aExprReg]));
end;

Voir aussi:

Développement DSMDéveloppement DSM

Outils personnels