Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.05;
Скачать: CL | DM;

Вниз

Не подскажите быстрый алгоритм сравнения символьных...   Найти похожие ветки 

 
Jolik ©   (2004-11-24 19:39) [0]

строк. Задача такая - есть массив строк-масок (т.е. содержащих символы * и ?) размером 10-20 байт(ну например в StringListe). Строк-масок может быть очень много. Периодически по каналу (неважно какому) получаем строку такого же размера (10-20 байт) и надо быстро сравнить ее с этим массивом строк-масок, причем с учетом символов-масок * и ?. Прямое сравнение занимает много времени.
Что можете посоветовать?

Спасибо!


 
Amadey   (2004-11-24 19:52) [1]

Бери символы между масками и обрабатывай построчно массив операторами Posили AnsiPos.
На случай, если вхождение есть, обрабатывай строку дальше, если нет то переходи к следующей.
Думаю более оптимального еще нет.


 
Poirot ©   (2004-11-24 20:14) [2]

Могу добавить, что это лучше делать не на строках, а на указателях (PCHAR) ибо искать следующую (например вторую подстроку) лучше относительно найденной первой, потомучто не надо дополнительно расходивать ресурс на определение вторая подстрока находится до вхождения первой или нет... :)
А иначе - регулярные выражения форевер:))))


 
Jolik ©   (2004-11-25 00:08) [3]

мне кажется нет ничего медленнее регулярных выражений :(((


 
Fktrc ©   (2004-11-25 06:15) [4]

[3] <-
Может и так, но плагин Search&Replace для редактора FAR, основанный на использовании RegExp"s, у меня работает со вполне приличной скоростью на относительно больших файлах. А уж универсальность RegExp делает их уникальным инструментом обработки текстов.



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

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

Наверх




Память: 0.47 MB
Время: 0.026 c
14-1100545072
Hmm
2004-11-15 21:57
2004.12.05
Нужна инфа: ассемблер, генератор случайных чисел.


9-1091170595
VolanD
2004-07-30 10:56
2004.12.05
Где взять графику?


1-1101288610
denis24
2004-11-24 12:30
2004.12.05
Twincontrol.Controlscount


3-1099816795
Dell3r
2004-11-07 11:39
2004.12.05
TTable


1-1100958768
Larisa
2004-11-20 16:52
2004.12.05
Установила Delphi 7 при попытке откомпилировать старый