Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

Re: Pos und Zeilenumbrüche???

  Alt 8. Feb 2010, 16:49
oder so:
Delphi-Quellcode:
mTmp := StringReplace( Memo1.Text, #13#10, #13, [ rfReplaceAll ] );
Memo1.SelStart := Pos( UpperCase( Edit2.Text ), UpperCase( mTmp ) ) - 1;
Memo1.SelLength := Length( Edit2.Text );
oder (für eine generelle Verwendung):
Delphi-Quellcode:
function SelectTextInMemo( AText : string; AMemo : TMemo ) : boolean;
var
  mTmp : string;
  tTmp : string;
  mPos : integer;
begin
  Result := False;
  // CRLF ersetzen mit CR
  mTmp := UpperCase( StringReplace( AMemo.Text, #13#10, #13, [ rfReplaceAll ] ) );
  // Falls im Suchtext auch ein CRLF auftaucht ;-)
  tTmp := UpperCase( StringReplace( AText, #13#10, #13, [ rfReplaceAll ] ) );
  mPos := Pos( tTmp, mTmp );
  if mPos > 0 then
    begin
      AMemo.SelStart := mPos - 1; // Sel startet bei 0 ;-)
      AMemo.SelLength := Length( tTmp );
      Result := True;
    end;
end;
edit: SelStart korrigiert ... und jetzt als function mit Rückgabewert True, wenn der Suchtext gefunden wurde
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat