Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Поиск и вставка. [D7, XP]


Wood ©   (2007-04-02 04:32:00) 

Здравствуйте.
В строке S: string неопределенной длины произвожу поиск функцией
AnsiStrPos()
при нахождении искомого, делаю вставку (string) процедурой
Insert()
Есть что-нибудь побыстрее? Если да, то какие функции/процедуры для поиска и вставки текста лучше использовать?
Спасибо.


Wood   (2007-04-02 05:42:00) [1]

Прошу прощения, AnsiReplaceStr() работает.
Тем не менее, может есть что-нибудь на API, то что быстрее?


Wood   (2007-04-02 05:15:00) [2]

медленно - понятие, конечно абстрактное...
При поиске AnsiStrPos() приходится использовать цикл, чтобы найти все в строке, но и AnsiReplaceStr() тоже использует цикл... И если строка "большая", то поиск затягивается. Ну, а если еще и insert() после этого, то еще дольше...


Wood   (2007-04-02 05:03:00) [3]


> А что, есть проблемы с временем поиска? Какие?

Считаю, что медленно работает...
К примеру, функция   Pos - быстрая

while pos(#0, S)>0 do
 S[Pos(#0, S)] := ' ';

Правда, здесь замещение, и только символа. Мне бы подошла даже функция
AnsiReplaceStr(), если бы она работала при поиске #13 :(, но, увы

AnsiReplaceStr(S,#13,'totext')
не работает.


Германн   (2007-04-02 04:41:00) [4]


> Есть что-нибудь побыстрее?

А что, есть проблемы с временем поиска? Какие?


Наверх

Титульная страница Поиск, карта сайта Написать письмо