Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.526 Beiträge
 
Delphi 12 Athens
 
#5

AW: vor dem ersten Delimiter alles löschen

  Alt 27. Dez 2024, 16:52
Mit dem auch in XE7 vorhandenen String-Helper geht das auch als Einzeiler:
Delphi-Quellcode:
var
  S, T: string;
begin
  S := 'heute ist ein schöner tag 123 / das wetter ist toll / gewitter / regen / sonne 435/';

  T := S.Substring(Succ(S.IndexOf('/'))).TrimLeft;

  Assert(T = 'das wetter ist toll / gewitter / regen / sonne 435/');
end;
Das funktioniert übrigens auch, wenn der Delimiter gar nicht vorkommt. Dann liefert das IndexOf ein -1 zurück, was mit dem Succ auf 0 erhöht wird und Substring somit den Ausgangsstring zurück liefert. (ChatGPT scheint das übersehen zu haben)

Für das TrimLeft gilt das bereits von Thomas gesagte.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat