Memo.Lineの指定文字列を削除

解決


Delphi使い@初  2005-02-20 18:21:04  No: 13333  IP: 192.*.*.*

こんにちは。
はじめまして。

早速ですが、当方、ソフトを作っていて、ぶち当たったところがあるので質問を。
Button1を押すと、文字列"Delphi"がMemo1に入る。(Memo1.Lines.Addで)
その文字列があったときはMemo1に入れない←[スレ有]

「Button2を押したとき、文字列"Delphi"があれば、
Memo1から文字列"Delphi"を削除する。」

↑質問はこの文字列削除の方法です。

Googleで検索してもよくわからず、質問をしました。
どなたか回答お願いします。

編集 削除
321  2005-02-20 19:25:48  No: 13334  IP: 192.*.*.*

高速な方法は他にありますが、できれば良いなら
StringReplaceで目的の文字列を空白に置き換えてはいかがでしょうか?

編集 削除
Delphi使い@C2  2005-02-20 19:46:26  No: 13335  IP: 192.*.*.*

>StringReplaceで目的の文字列を空白に置き換えてはいかがでしょうか?

空白の文字列に置き換えたのはいいんですが、
Button1を押したとき、無駄に改行が表示されます。
この改行を消す場合はどうすればよいのでしょうか。

編集 削除
321  2005-02-20 20:24:00  No: 13336  IP: 192.*.*.*

うーん。
その文章からじゃどこを間違えて改行が入るのか分かりません。

procedure TForm1.Button1Click(Sender: TObject);
var
str:string;
begin
str:=Memo1.Lines.Text;
str:=StringReplace(str,'Delphi','',[rfReplaceAll]);
Memo1.Lines.Text:=str;
end;

編集 削除
HOta  2005-02-20 20:27:22  No: 13337  IP: 192.*.*.*

Memo1.Lines.Delete(Memo1.Lines.Indexof('Delphi'));
で削除します。

編集 削除
Delphi使い@C3  2005-02-20 21:08:59  No: 13338  IP: 192.*.*.*

>Memo1.Lines.Delete(Memo1.Lines.Indexof('Delphi'));
あひゃ。できました。
ありがとうございます。

編集 削除