« RegularExpression (rtl) » : différence entre les versions
Aucun résumé des modifications |
mAucun résumé des modifications |
||
(3 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
<source lang='delphi'>Function RegularExpression(const aSource:string; const aExpression:string; aResult: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 liste de chaîne. | 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 22 : | Ligne 22 : | ||
<source lang='delphi'> | <source lang='delphi'> | ||
//Function RegExpDonneeBaliseFormat(aStr:string; aExprReg:string):string; | //Function RegExpDonneeBaliseFormat(aStr:string; aExprReg:string):string; | ||
var vStrList:TStringList; | var vStrList : TStringList; | ||
Count : Integer; | |||
begin | begin | ||
vStrList := TStringList.Create; | |||
vStrList := TStringList.Create; | vCount := RegularExpression(aStr, aExprReg, vStrList); | ||
RegularExpression( aStr ,aExprReg ,vStrList); | |||
if ( | if (vCount=0) then | ||
Result := '' | |||
else if (vCount=1) then | |||
if ( | |||
result := vStrList.Strings[0] | result := vStrList.Strings[0] | ||
else | else | ||
raise ERule.Create(Format(_TP('Exception RegExpDonneeBaliseFormat , donnée lue : "%s", expression : "%s", retourne | raise ERule.Create(Format(_TP('Exception RegExpDonneeBaliseFormat , donnée lue : "%s", expression : "%s", retourne %d réponses'),[varDonneeLue, aExprReg, vCount])); | ||
end; | end; | ||
</source> | </source> |
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 —
}}