![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 07.11.2008
Сообщений: 13
|
![]()
Есть текстовый файл, есть слово, содержащее подстановочные символы ?(1 символ) и * (несколько символов). К примеру Borland?e* (BorlandDelphi)
Необходимо определить есть ли слово, удовлетворяющее заданной маске в данном файле. Бьюсь 2 дня с этим, пока не сумел ничего придумать. Буду рад любым алгоритмам и примерам поиска по маске. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]()
...а что такое "?e" ?
функцию pos() пробовали?
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 07.11.2008
Сообщений: 13
|
![]()
?e* = Delphi : ?=D, e=e, *=lphi
Это и есть маска. Пос пробовал, но универсальный алгоритм придумать все равно не удалось ![]() |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]()
pos() значит проигнорировали...
вам необходимо сначала определить начало и конец первого слова без маски, потом искать следующий символ без маски, по условию, если встречается символ "?", то один символ любой, если "*" то до конца слова.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
![]() |
![]() |
![]() |
#5 | |
Участник клуба
Регистрация: 06.04.2009
Сообщений: 1,524
|
![]() Цитата:
Например нужно найти все программы, начинающиеся на знак подчеркивания. Тогда маска будет такой Код:
_ы.exe _sd.exe _34ffdfa.exe Алгоритм примерно такой: 1. берем маску Borland?e* 2. сохраняем Pos("Borland") в num 3. переходим к num + 1; т.к. стоит "?" 4. сохраняем если num + 1 = "е", то ищем дальше Я думаю как то так. Принцип надеюсь понятен? Последний раз редактировалось psycho-coder; 26.12.2009 в 23:30. |
|
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]() Цитата:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
|
![]() |
![]() |
![]() |
#7 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Процедура поиска - необходимо организовать поиск по маске *.txt в папке Test | GvR | Общие вопросы Delphi | 3 | 04.11.2009 15:31 |
Поиск папки по маске | ForzaJuve | Общие вопросы Delphi | 9 | 20.06.2009 23:50 |
Поиск по "маске" | Родион | БД в Delphi | 2 | 16.06.2008 07:33 |
Поиск По маске | CoreFox | Общие вопросы Delphi | 11 | 21.02.2008 21:48 |