RegularExpression (rtl)
De Wiki1000
(Différences entre les versions)
m |
|||
| (5 révisions intermédiaires par 2 utilisateurs sont masquées) | |||
| Ligne 1 : | Ligne 1 : | ||
| − | <source lang='delphi'>Function RegularExpression(const aSource:string; const aExpression:string; | + | <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 | + | 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. | ||
|- | |- | ||
| − | | | + | |aResult |
| − | | | + | |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]] | ||
| − | |||
Version actuelle en date du 20 septembre 2018 à 17:25
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 (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;
Voir aussi:
| Whos here now: Members 0 Guests 0 Bots & Crawlers 1 |