Поиск по шаблону

  Загрузить поиск по шаблону

Обработки для 1С:
Загрузить поиск по шаблону (12 Кб)
Загрузить поиск по шаблону от Ильдара Каюмова (4 Кб)

 

  Постановка задачи

Обработка содержит алгоритм поиска строк по шаблону. Функции обработки можно использовать в любой конфигурации. Функция возвращает 1, если шаблон подходит под заданную строку, или 0, если не подходит.

Шаблон может содержать метасимволы ? и *. Метасимвол ? в шаблоне означает любой символ на этом месте в искомой строке, а метасимвол * означает любую последовательность символов (возможно пустую) в данном месте.

Большие и малые буквы в обработке не различаются.

Примеры:
Пусть есть строки: "56 789", "3456 789", "345", "346 789", " 679", "329", "12", тогда поиск по шаблону должен выдать следующие результаты:

Шаблон Строки, для которых возвращается 1 Комментарий
"*5*?" "56 789", "3456 789" Но не "345", поскольку шаблон предполагает наличие какого-нибудь символа после 5
"5*" "56 789"  
"???" все, кроме "12" так как "12" содержит менее трех символов
"*9" строки, завершающиеся 9  
"* ??9" "3456 789", "346 789", " 679" Но не "329"! так как "329" хоть и оканчивается на 9, но за два символа перед девяткой нет пробела

Изначально были сформулированы только базовые возможности поиска по шаблону. Поиск - часто используемая функция в любой СУБД (в том числе в 1С). Чем богаче возможности поиска, тем легче найти информацию. Поэтому скорее всего при реальном использовании пользователи захотят расширить возможности поиска.

Поиск по шаблону достаточно знаком многим пользователям и программистам. Похожие системы поиска можно посмотреть в любом интернет-поисковике (www.yandex.ru, www.rambler.ru, www.yahoo.com и т.п.). Более развитый поиск по шаблону можно посмотреть в текстовых редакторах MS Word и MultiEdit, или в классической утилите Grep, которая пришла с Unix систем.

Дальше...

Rambler's Top100 Рейтинг@Mail.ru
Телефон: (095) 937-72-84
Адрес для связи: Мазуркин Сергей mazzy@mazzy.ru
Вся контактная информация