PDA

View Full Version : Search and Replace



رحمانیان
چهارشنبه 21 اسفند 1381, 16:36 عصر
از شما واقعا ممنونم که سوال مرا بدون جواب نگذاشتید

من هر کاری کردم تابع هایی که می نوشتم درست کار نمی کرد ولی دیدم
اگر از شما بپرسم شاید مشکلم برطف شود و حالا دیدم که متغیر X رو درست
تعریف نکرده بودم

خیلی ممنون

عنوان سوال تصحیح شد

RezaBS
جمعه 01 فروردین 1382, 21:11 عصر
سلام
دیدم این سوال بی جواب موندهو البته انصافا 10 دقیقه هم برای پیدا کردن روش وقت نمی خواد با این حال دیدم این دوستمون فقط همین یک پیغام را در سایت گذاشته(الان دیدم بیشتر شده)، برای اینکه نا امید نشه و برای آیندگانی که به این موضوع نگاه میکنند جوابی اینجا میگذارم:
تابع زیر کاملا تست شده هست و به قولی روش آب دوغ خیاری برای انجام این عملیات هست. این تابع یک عبارت را پیدا میکنه و بعد عبارت دیگه ای را جایگزین میکنه:


procedure TfrmSearch.redtSearchAndReplace( txtSearch, txtReplace: String);
Var
X, XEnd : Integer;
begin
With RichEdit1 Do
Begin
X := 0;
XEnd := Length( Text);
X := FindText( txtSearch, X, XEnd, []);
While X <> -1 Do
Begin
SetFocus;
SelStart := X;
SelLength := Length( txtSearch);
SelText := txtReplace;
X := FindText( txtSearch, X + Length( txtReplace), XEnd, []);
End;
End;
end;

باشد که مقبول افتد ...