Einzelnen Beitrag anzeigen

Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#1

Regex: Alle nicht übereinstimmenden Zeichen entfernen

  Alt 18. Mär 2014, 11:32
Hallo!

Ich möchte aus einem Fließtext mit Satzbauzeichen etc. nur die reinen Worte, Zahlen und Leerzeichen extrahieren. Sämtliche Zeichen die da nicht reinfallen, sollen entfernt werden. Jetzt hab ich mir ein Regex gebastelt das zwar prinzipiell funktioniert, aber nur den String bis zum Auftauchen des ersten nicht-passenden Zeichens liefert. Also danach macht er nicht mehr weiter.
Delphi-Quellcode:
  Rx:= TPerlRegEx.Create;
  try
    Rx.Subject:= S;
    Rx.RegEx:= '([a-zA-Z0-9äöüÄÖÜß ]+)?';
    Rx.Match;
    S:= Rx.MatchedText;
  finally
    FreeAndNil(Rx);
  end;
Grüße
Cody
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat