ユーザーがアイテムのリストを入力できるフォームに TMemo があります。人々はここに多くの項目を入力できます。[保存] をクリックすると、TMemo の内容がチェックされ、データベースに追加されます。
TStringList に 2 番目のリストがあり、これをループして、その項目のいずれかが TMemo に含まれているかどうかを確認します。
ナッツシェルでは、このように見えます
....
//slItems = TStringList
//mItems = TMemo
for i := slItems.Count -1 downto 0 do
begin
if mItems.Lines.IndexOf(slItems[i]) = -1 then
slItems[i].Delete;
end;
----
stringlist がループしているので、メモに存在するかどうかを確認し、存在しない場合はリストから削除します。
ただし、200 以上のアイテムでは速度が大幅に低下し始め、1000 になると非常に悪くなります。
TMemo を検索する最速の方法は何ですか?