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

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

Функция поиска подстроки


kull ©   (2002-03-14 03:04:00) 

Знает кто-нибудь в Delphi функцию поиска подстроки в строки типа Pos(), но чтобы была не чувствительна к регистру?
Пробовал сначала AnsiUpperCase(), а потом использовать Pos(), но AnsiUpperCase() сильно тормозит...


kull   (2002-03-15 02:05:00) [1]

Ok! Спасибо! Попробую...


lipskiy   (2002-03-14 13:53:00) [2]

Согласен с Alx2. Я тоже делаю так - работает быстро.


Alx2   (2002-03-14 13:37:00) [3]

Попробуй UpperCase почти вручную сделать.
Делаем массив
Var cnvMap : array ["а".."я"] of char = ("А","Б"...)
и через него конвертим в uppercase.
а cnvMap предварительно заполняем через AnsiUpperCase


kull   (2002-03-14 13:15:00) [4]

Да... Я так и думал...


~Sergius   (2002-03-14 04:11:00) [5]

ну, тут разве что самому переводить через chartooem, но быстрее вряд ли будет -- посмотри исходники ANSIuppercase и поймешь, что оптимизировать там нечего. Разве что пересмотреть логику программы


kull   (2002-03-14 03:40:00) [6]

Втом то и дело, что содержат русские символы и не русские.


~Sergius   (2002-03-14 03:37:00) [7]

Разумеется, что оно без ANSIuppercase будет работать быстрее, поскольку ANSIuppercase вызывает еще OemToChar для преобразования из дос кодировки. Если строки не содержать русских символов в дос кодировке, тогда используй просто uppercase


kull   (2002-03-14 03:24:00) [8]

Дело в том, что если пропустить использование AnsiUpperCase то все работает раза в 2 быстрее.
А вообще то у меня имеется список строк и надо найти строки, которые содержат нужный текст.


~Sergius   (2002-03-14 03:18:00) [9]

В чем тормозит ANSIUpperCase??


Наверх

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