AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TRegExpr benannte Gruppen abfragen

Ein Thema von Kostas · begonnen am 12. Jul 2007 · letzter Beitrag vom 12. Jul 2007
 
Kostas

Registriert seit: 14. Mai 2003
Ort: Gerstrhofen
1.117 Beiträge
 
Delphi 12 Athens
 
#2

Re: TRegExpr benannte Gruppen abfragen

  Alt 12. Jul 2007, 15:09
OK, Problem gelöst. Vermutlich liegt es TRegExpr, beim anwenden von TPerlRegEx
funkt es einwandfrei, allerdingt leicht abgeändert. TPerlRegEx vertragt z.b.
keine gleichen Bezeichner für die Gruppen, und benötigt ein "P" vor den Gruppennamen.


Das abgeändert, funkt es einwandfrei. Das Tool RegexBuddy rentiert sich zu 100%

Delphi-Quellcode:
{--------------------------------------------}
{}procedure SplitLandPLZOrt(LandPLZOrt:String;
                           var Land:String;
                           var PLZ:String;
                           var Ort:String);
{--------------------------------------------}
 const
   template = '^(((?P<land>[A-Z]{1,3})[ -])?(?P<plz>\d+)\s+)?(?P<ort>[a-zäöü]+(\s+\d+)?)$|^(?P<plz2>\d+)$';
 var
  Regex: TPerlRegEx;
begin
  Regex := TPerlRegEx.Create(nil);
  try
    Regex := TPerlRegEx.Create(nil);
    Regex.RegEx := template;
    Regex.Subject := LandPLZOrt;
    Regex.Options := [preCaseless];
    if Regex.Match then
    begin
        Land := Regex.SubExpressions[3];
        PLZ := Regex.SubExpressions[4];
        if (Regex.SubExpressions[7]<>'')and
           (Regex.SubExpressions[5]='')
        then Ort := Regex.SubExpressions[7]
        else Ort := Regex.SubExpressions[5];
    end;{if}
  finally
    Regex.Free;
  end;{try}


end;{SplitLandPLZOrt}

Gruß Kostas
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz