Einzelnen Beitrag anzeigen

Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.429 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Text (Strings) Zeilenumbrüche einfügen aufgrund von Satzzeichen.!?

  Alt 30. Jun 2022, 14:44
Ein Objekt sollte möglichst immer auf der Ebene freigegeben werden, auf der es auch erzeugt wurde.
Deshalb halte ich das Erzeugen einer TStringList als Rückgabewert hier nicht für sinnvoll.

Man kann den Zähler auch gegen Null zählen lassen und spart so eine Variable.
Delphi-Quellcode:
function SplitText(AText: string): string;
const
  CRLF = #13#10;
var
  C: Char;
  Counter: Integer;
begin
  Result := '';
  Counter := 2;
  for C in AText do
  begin
    Result := Result + C;
    if CharInSet(C, ['!', '.', '?']) then
      Dec(Counter);
    
    if Counter = 0 then
    begin
      Result := Result + CRLF;
      Counter := 3;
    end;
  end;
end;
  Mit Zitat antworten Zitat