Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.09;
Скачать: 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 вся ветка

Текущий архив: 2005.10.09;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.045 c
14-1127307165
Prohodil Mimo
2005-09-21 16:52
2005.10.09
как определить language for non-Unicode programs ?


2-1125316242
Dust
2005-08-29 15:50
2005.10.09
весьма хитраяситуация... именно так, без пробелов


14-1126612702
leonidus
2005-09-13 15:58
2005.10.09
Объясните мне на пальцах про индексы


14-1126698925
Чувачок
2005-09-14 15:55
2005.10.09
Уважаемая конференция подскажите плз


14-1126882368
Lexer
2005-09-16 18:52
2005.10.09
Офис - не лучшее место для продуктивной работы.