Einzelnen Beitrag anzeigen

MoYo

Registriert seit: 6. Apr 2005
20 Beiträge
 
#14

Re: Suche Hilfe für Stringverarbeitung mit Copy und Pos ...

  Alt 13. Aug 2007, 10:44
Zitat von SurfDuDe:
Das würde ich unbedinngt mit Regular Expressions und TRegExpr lösen:

http://www.regexpstudio.com/DE/TRegExpr/Help/About.html


Delphi-Quellcode:
// Diese einfache Funktion extrahiert alle E-Mail-Adressen aus dem InputString
// und legt eine Liste dieser Adressen in den Rückgabewert
function ExtractEmails (const AInputString : string) : string;
const
   EmailRE = '[_a-zA-Z\d\-\.]+@[_a-zA-Z\d\-]+(\.[_a-zA-Z\d\-]+)+'
var
   r : TRegExpr;
begin
   Result := '';
   r := TRegExpr.Create; // Erzeuge Objekt
   try // garantiere Speicherfreigabe
      r.Expression := EmailRE;
      // der R.A. wird automatisch in die interne Struktur übersetzt
      // innerhalb der Zuweisung an diese Eigenschaft
      if r.Exec (AInputString) then
         REPEAT
            Result := Result + r.Match [0] + ', ';
         UNTIL not r.ExecNext;
      finally r.Free;
   end;
end;

begin
   ExctractEmails ('My e-mails is [email]anso@mail.ru[/email] and [email]anso@usa.net[/email]');
   // gibt zurück: 'anso@mail.ru, [email]anso@usa.net[/email], '
end.
Diese Arbeitsweise kenne ich von PHP. Wundervoll, dass jemand auch so etwas für Delphi gemacht hab.
Ich werde es damit testen. Ich danke euch allen Sollte ich Probleme haben sag ich bescheid.
  Mit Zitat antworten Zitat