« RegularExpression (rtl) » : différence entre les versions

De Wiki1000
Aucun résumé des modifications
 
mAucun résumé des modifications
 
(5 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
<source lang='delphi'>Function RegularExpression(const aSource:string; const aExpression:string; aResultat:TStrings):integer;</source>
<source lang='delphi'>Function RegularExpression(const aSource:string; const aExpression:string; aResult:TStrings):integer;</source>


Cette fonction parse une chaine suivant une expression régulière et retourne les différents tokens identifiés dans une stringlist.
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.


{|class="wikitable"
{|class="wikitable"
Ligne 14 : Ligne 14 :
|Expression régulière.
|Expression régulière.
|-
|-
|aResultat
|aResult
|String list recevant les tokens.
|Liste de chaîne recevant les tokens.
|}
|}


Ligne 21 : Ligne 21 :


<source lang='delphi'>
<source lang='delphi'>
//Function RegExpDonneeBaliseFormat(aStr:string; aExprReg:string):string;
var vStrList : TStringList;
    Count    : Integer;
begin
begin
vStrList := TStringList.Create;
vCount := RegularExpression(aStr, aExprReg, vStrList);
if (vCount=0) then
  Result := ''
else if (vCount=1) then
  result := vStrList.Strings[0]
else
  raise ERule.Create(Format(_TP('Exception RegExpDonneeBaliseFormat , donnée lue : "%s", expression : "%s", retourne %d réponses'),[varDonneeLue, aExprReg, vCount]));
end;
end;
</source>
</source>
Ligne 29 : Ligne 41 :
{{Footer|Développement DSM}}
{{Footer|Développement DSM}}
[[category:RTL Chaîne]]
[[category:RTL Chaîne]]

Dernière version du 20 septembre 2018 à 16:25

<source lang='delphi'>Function RegularExpression(const aSource:string; const aExpression:string; aResult:TStrings):integer;</source>

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

<source lang='delphi'> //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 (vCount=1) then
  result := vStrList.Strings[0]
else
  raise ERule.Create(Format(_TP('Exception RegExpDonneeBaliseFormat , donnée lue : "%s", expression : "%s", retourne %d réponses'),[varDonneeLue, aExprReg, vCount]));

end; </source>

Voir aussi:

{{#if:Développement DSM|

{{#if:Développement DSM|— Développement DSM |}} — Développement DSM

|

{{#if:|— [[{{{1}}}]] |}} — Développement DSM

}}