← kolan.mobi
хоумпэйдж |
Главная |
← ksoftware.ya.ru блог |
TelFilter — это программа, которая умеет находить реквизиты фирм в тексте, имеющем какую-то структур.
Такой структурированный текст, например, можно найти на сайтах различных телефонных справочников вроде «Алло Ростова», поэтому одно из применений программы — копирование онлайновых телефонных справочников и сохранение их в базу данных.
Программа работает достаточно просто.
В поле «Текст с реквизитами» вставляется исходный текст (или загружается из файла). По нажатию на кнопку «Найти реквизиты» программа анализирует (парсит) исходный текст по заданным правилам.
Правила позволяют так настроить программу на конкретный формат исходного текста, что поиск реквизитов работает весьма неплохо.
Часть файла с правилами устанавливающегося по умолчанию:
[Name] Name=Name BlockSeparator=1 DistanceRuleName=Phone DistanceFromRule=-3 UserName=Название фирмы UserDescription=Название фирмы — одна из основных частей реквизита. GarbageRule=0 PositionFromRule=0 ActiveRegExpr=0 DBFieldName=[Название] DBTable=[TXT Реквизиты] DBMaxLength=200 [Phone] Name=Phone BlockSeparator=0 DistanceFromRule=0 UserName=Телефон UserDescription=Телефонъ — аппарат для передачи человеческой речи на большiя разстоянiя, 1905 г. GarbageRule=0 PositionFromRule=0 RegExpr0=(\+7|8)?\s*(\(\d{3,5}\))?\s+(\d{3}(\-|\s)*\d{2}(\-|\s)*\d{0,2}) ActiveRegExpr=0 DBFieldName=[Телефон] DBTable=[TXT Телефоны] DBMaxLength=50 [Address] Name=Address BlockSeparator=0 DistanceFromRule=0 Dictionary=ул|пр|пер|п-т UserName=Адрес UserDescription=Слово адрес произошло от французского adresse (направлять). GarbageRule=0 PositionFromRule=0 RegExpr0=(^|\s+)({Dictionary})(\.|\s|,)+(([А-Я]{1}|[0-9]{1,4})[А-Яа-я\.\-]{2,})(\.|\s|,)+(\d+[А-Яа-я]?/?\d*[А-Яа-я]?)($|(\.|\s|,)+) RegExprDescription0=Атрибут спереди RegExpr1=(^|\s+)(([А-Я]{1}|[0-9]{1,4})[А-Яа-я\.\-]{2,})(\.|\s|,)+({Dictionary})(\.|\s|,)+(\d+[А-Яа-я]?/?\d*[А-Яа-я]?)($|(\.|\s|,)+) RegExprDescription1=Атрибут сзади ActiveRegExpr=1 DBFieldName=[Адрес] DBTable=[TXT Адреса] DBMaxLength=200 [EMail] Name=EMail BlockSeparator=0 ...
В том виде в каком программа была сдана заказчику (фирме «XPSoft») она не представляет большого интереса, так как выгружает результаты поиска в базу данных специального формата. Однако, если программа заинтересовала вас в своем первоначальном виде, вы можете обратиться к нашему клиенту по адресу www.xpsoft.ru.
Программа была разработана у нас в KSoftWare, поэтому если вас заинтересовала её функциональность, то она может быть легко доработана под ваши нужды. Кроме того система анализа текста может быть выделена в виде отдельных программных компонентов пригодных для встраивания в программы, написанные на языке Delphi. По всем вопросам пишите нам по адресу kolan@ksoftware.ru.