Вниз
Скачать: CL | DM;

Memo   Найти похожие ветки 

← →
HunTeR_IzV ©   (2005-08-31 20:33) [0]

В поле Memo1 надо найти определенный текст, после которого сдвинуть каретку на заданное заранее колличество символов, скопировать идущий дальше текст в буфер, вставить в поле Memo2 и повторять до самого конца Memo1... Все найденные мной алгоритмы поиска по Memo ничего толком не дали :( Может, искал плохо. Помогите, плиз, хоть частично


← →
Dispirited Zeqfreed   (2005-08-31 21:40) [1]

HunTeR_IzV ©   (31.08.05 20:33)

Вот код, делает то, что ты написал, насколько я это все понял:
function PervertedMemoSearching(const TextToFind : String;
                               const MemoSrc, MemoDst : TMemo;
                               const ClearDest : boolean = true) : boolean;
const
MoveBy_value = 3;
var
p : Integer;
MemoText : String;
begin
Result := false;
if ClearDest then MemoDst.Clear;

MemoText := MemoSrc.Text;

p := Pos(TextToFind, MemoText);
while (p > 0) do begin
 MemoSrc.SelStart := p + MoveBy_value + length(TextToFind);
 MemoSrc.SelLength := 0;

 MemoText := Copy(MemoText, MemoSrc.SelStart, length(MemoSrc.Text));
 MemoDst.Text := MemoDst.Text + MemoText;

 p := Pos(TextToFind, MemoText);
end;
end;


Теперь вопросы, которые у меня возникли:
Какой смысл в передвигании каретки? Если ты думаешь, что это необходимо для копирования или поиска - это не так.


> скопировать идущий дальше текст в буфер

Идущий дальше до конца текста в мемо или он дожен заканчиваться какой-то определенной последовательностью символов?


> Все найденные мной алгоритмы поиска по Memo

А какие алгоритмы ты нашёл?


← →
Dispirited Zeqfreed   (2005-08-31 21:44) [2]

Dispirited Zeqfreed   (31.08.05 21:40) [1]
Ой. Хотел придать изменению позиции каретки хоть какой-то смысл - в итоге она не корректно будет двигаться относительно найденного текста в мемо. Но код, в общем, работает :) Т.е. если смысл именно в передвижении каретки, то нужно внести пару изменений ;))



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
4-1123669868
Alexa
2005-08-10 14:31
2005.10.09
Завершение процессов


1-1126864825
nikolas
2005-09-16 14:00
2005.10.09
TPop3Cli


14-1126797084
ArtemESC
2005-09-15 19:11
2005.10.09
ОС


5-1102480341
Oleg_K
2004-12-08 07:32
2005.10.09
Создание компонент


14-1126849420
Разгневанный манагер
2005-09-16 09:43
2005.10.09
Как защитить свой компьютер от непрошенных гостей?




   Наверх