Парсер неоднородного txt файла
информация может поступать в разных видах, например:
тип1 дополнительно, тип2, телефон
или
дополнительно, тип1, тип2, телефон
и все подобные вариации, при чем, "тип1" и "тип2", это одно слово, без пробелов, а "дополнительно" это несколько слов разделенных пробелом, обычно где-то 5-15.
помогите пожалуйста.
могу:-)
1) читаем строку.
2) ищем в строке "тип1" - его находим из словаря, разработанного мной.
3) ищем в строке "тип2" - его находим фактически из другого словаря.
4) далее у меня возникает проблема, с поиском "дополнительно", т.е. там присутствовать может 1-2 предложения. и в них может присутствовать ".", ",", ";", ":" и т.п.
5) далее ищем телефон, тоже их может быть 1-2. их логично будет искать по сочетанию цифр, например, если у нас идет 3 цифры подряд, то это телефон.
ЗЫ: Ну это я так понимаю. Может в чем-то не прав.
нет, разделено все пробелами, обычное текстовое предложение. которые необходимо разбить на категории. т.е. могут встречаться и запятые, и точки.
А если типы встречаются в середине предложения? вырезать?
Типы не повторяются. но проблема в том. что у, допустим, для типа2 у меня словарь. только списков корней слов, а не самих слов. как мне искать в предложении слово. а в последствии его корень?
Если так. то проще будет написать полностью словарь. т.е не из корней, а из слов, их там всего может 200-300 штук...и использовать tolower(), что бы не было проблем с большими или маленькими буквами:-)
[offtop]
вот блин на первом/втором курсе универа помню инет был дикостью потому что Dial-Up и дорого, сидели ночами кучкой по 2-3 чела и мучались. некоторые по одному.... и никаких ведь тебе форумов )))))
[/offtop]
BOOST lib запользуй в конце концов =) там RegExp'ы есть =) несколько облегчит твою задачу (парсил даты в самых разных вариациях :)))) ).
в общем могу посоветовать только ДЕРЗАТЬ и "грыСть граниД" твоей задачи :)