Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > Количествао слов в строке по шаблону


Автор: Veitmen 10.9.2009, 10:02
Всем привет.

Задача в  следующем. Есть строка, надо в ней посчитать количество слов по некоторым правилам. Правила:

Предлоги и союзы отдельно не считаются
Инициалы считаются за одно слово
Цифры (с указанием символа №) считаются за ОДНО    слово
Серия паспорта нового образца считается за ОДНО слово
Адрес. Название улиц считается за ОДНО слово (сокращения «ул.», «пр.» цыфры в названии улиц, номер дома, если он указывается с наименованием улицы, за слово НЕ СЧИТАЮТСЯ)
Номер квартиры (кв. 15), офиса (оф. 22),склада (скл. 2) считается за ОДНО слово
буква или цифра в номере дома, склада и т.п. через дробь за отдельное слово НЕ СЧИТАЮТСЯ
Номер телефона, независимо от количества цифр, считается за ОДНО слово
Наименование марки и модели автомобиля считается за ОДНО слово
Дополнительное слово в наименовании марки и модели автомобиля, характеризующее его параметры (например, тип кузова и т.д.) считается ОТДЕЛЬНО
Государственный номер машины со всеми буквами и цифрами считается за ОДНО слово
Количество слов в сложном слове равно количеству его составных частей, в случае, если они пишутся через дефис
Сокращения «1991 г.в.», «1979 г.р.», «120 кв.м», 
     «300 р./сутки», «70 км/ч» считаются за ДВА слова
Сокращения «1991 г.»,  «120 м», «50 кг», «30%», «50 шт.» считаются за ОДНО слово
Расчет количества слов в дате:
22 сентября 2003 года                                                                                   4 слова
22.09.03                                                                                                            1 слово.
Количества слов в интервале времени через тире и/или заключенный в скобки –  считается за ДВА слова

Вот такие условия. smile 
Имеем базу по все адресам, маркам, предлогам(союзам) и т.п.

Задача как я уже говорил подсчитать количетсво строк в строке. Какие алгоритмы вы подскажите?

ЧТо хочется. Хочется создать какую то базу шаблонов, просле чего проверять строку на соответсвие шаблону, после чего проверять на соответсиве конкретной бд по словам. Что думаете? Что подскажете?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)