Ganz einfach einfach!
Entweder ist es #10 oder #13 oder #13#10, aber nie gemischt, also einfach einfach machen.
Und noch was, auch Str := '' ist eine Zeile!
Delphi-Quellcode:
function CRLFCount(Str: String): Integer;
var
cl: Char;
begin
Result := 1;
cl := #10;
if Pos(cl, Str) = 0 then cl := #13;
while Pos(cl, Str) > 0 do
begin
Inc(Result);
Delete(Str, 1, Pos(cl, Str) + 1);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
s: String;
begin
s := 'aaa' + #13#10 + 'aaa' + #13#10 + 'aaa' + #13#10 + 'aaa';
ShowMessage(IntToStr(CRLFCount(s)))
end;