powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Распарсить строку адреса
25 сообщений из 33, страница 1 из 2
Распарсить строку адреса
    #38751213
УКРОП_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, есть ли какие то примеры, коды для распарсивания адреса?

Пример

г.Киев просп. Победы дом 1, кв 1
Киевская обл. г. Ирпень ул. Садовая дом 10, кв 1
и т д

Я привел простенькие примеры, попадаются и варианты похуже с Селами, в/ч, Районами

Или распарсить адрес практически невозможно без ошибок?

ps: Ошибок все равно не избежать но я вижу что процентов 70-80 из той базы которую предоставили все таки получить нормальные данные можна, а те что невозможно распарсить просто сохранять в отдельной колонке в базе.
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751269
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
УКРОП_,

.. может, есть и готовые библиотеки (но я так подозреваю, там русский/украинский + странный украинский с латинской "i" вместо украинской и т.д.), но вообще говоря - строковые функции в руки - и писать свой парсер: String.Contains(), String.IndexOf(), String.StartsWith(), .Substring() и т.д. ...
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751270
УКРОП_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
carrotikУКРОП_,

.. может, есть и готовые библиотеки (но я так подозреваю, там русский/украинский + странный украинский с латинской "i" вместо украинской и т.д.), но вообще говоря - строковые функции в руки - и писать свой парсер: String.Contains(), String.IndexOf(), String.StartsWith(), .Substring() и т.д. ...

спасибо.
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751277
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гляньте, может поможет: http://habrahabr.ru/post/232347/
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751281
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
УКРОП_Подскажите, есть ли какие то примеры, коды для распарсивания адреса?

Пример

г.Киев просп. Победы дом 1, кв 1
Киевская обл. г. Ирпень ул. Садовая дом 10, кв 1
и т д

Я привел простенькие примеры, попадаются и варианты похуже с Селами, в/ч, Районами

Или распарсить адрес практически невозможно без ошибок?

ps: Ошибок все равно не избежать но я вижу что процентов 70-80 из той базы которую предоставили все таки получить нормальные данные можна, а те что невозможно распарсить просто сохранять в отдельной колонке в базе.

При такой постановке вопроса вручную ).

ищи правила, если город всегда ничинается на "г." , а улица на "ул." то пляши отседова.

почитай тут тут или используй string.Indexof(" г.") string.Indexof(" ул.") а потом substring до 2 продела напрмер
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751289
monstrU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
УКРОП_,

вообще есть лингвистические системы - парсеры адресов. ищи address parser.
правда под каждого заказчика их настраивать индивидуально приходиться.
стоят дорого :) я знаю - у нас такую систему ребята разрабатывают - работает.
если интересует высокий процент разбора адресов - то лучше покупать уже готовую систему
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751306
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
УКРОП_,

работа в ексель ---может поможет


строки перевожу в столбик(я меня запятая нормально работает, у вас сложнее
г.Киев просп., Победы дом 1,кв 1
Киевская обл., г. Ирпень ул. Садовая дом 10, кв 1

1г.Киев просп.столбик для кода лексемы из впр1Победы дом 11кв 12Киевская обл.2г. Ирпень2ул. Садовая 2дом 102 кв 1

и пополняю лист для впр
в нем просматриваю пополнение и присваиваю код
1улица2дом2кв3населенный пункт4район5область6индекс

затем уплотняю рабочий лист назад, на основной

три листа сделала для удобства
можно иметь только 2
1-основной
2-справочник
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751340
УКРОП_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообщем спасибо всем за советы.

И проанализировав все, наверное придется писать парсер самому, так наверное надежней, да мало ли где понадобится.
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751389
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
УКРОП_Вообщем спасибо всем за советы.

И проанализировав все, наверное придется писать парсер самому, так наверное надежней, да мало ли где понадобится.

задача сводится к полнотекстовому поиску. иные варианты (с парсингом) довольно таки ущербны.
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751397
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt
задача сводится к полнотекстовому поиску. иные варианты (с парсингом) довольно таки ущербны.

...тут просто есть еще один момент .. кто ни разу не сталкивался с парсингом украинских БД (адресов, контрагентов, номенклатуры изделий) - тот не поймет всей глубины выражения "как мне перестать офигевать и начать работать" .. :)
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751417
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ваще, в таких задачах я загружаю данные на sql server и прохожусь по ним неказистым скриптом. В простейшем случае задача решается за час.
Был однажды случай, надо было адреса разгребсти, но там был полный ппц. Нашел какой-то сайт для определения почтовых индексов, там ребята написала очень качественный лингвистический движок на оракле, ну я на тот сайт все данные и подсунул. Но там только для СПБ.
ЗЫ Причем здесь язык не понятно.
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751418
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttзадача сводится к полнотекстовому поиску. иные варианты (с парсингом) довольно таки ущербны.
оч интересно, можно подробней, каким макаром здесь фул-текст-серч поможет?
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751454
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIhVosttзадача сводится к полнотекстовому поиску. иные варианты (с парсингом) довольно таки ущербны.
оч интересно, можно подробней, каким макаром здесь фул-текст-серч поможет?

введи любой адрес в Гугл и Яндекс и узнаешь как это помогает.
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751476
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttвведи любой адрес в Гугл и Яндекс и узнаешь как это помогает.
Так бы сразу и сказал, если нужно распарсить строку с адресом - изобретите яндекс или гугл!
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751531
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIhVosttвведи любой адрес в Гугл и Яндекс и узнаешь как это помогает.
Так бы сразу и сказал, если нужно распарсить строку с адресом - изобретите яндекс или гугл!

Зачем его изобретать? Есть готовые решения, берёшь и пользуешься. Оно надо, делать какой-то непонятный парсинг, который всё равно легко в итоге сломать? Если можно приделать полнотекстовый поиск и предлагать наиболее релевантные результаты. По опыту, самое простое и надёжное решение, хотя и требует некоторых затрат на хранение поискового индекса.
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751545
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЗачем его изобретать? Есть готовые решения, берёшь и пользуешься. Оно надо, делать какой-то непонятный парсинг, который всё равно легко в итоге сломать? Если можно приделать полнотекстовый поиск и предлагать наиболее релевантные результаты. По опыту, самое простое и надёжное решение, хотя и требует некоторых затрат на хранение поискового индекса.
Еще раз. Есть строки типа:

1) г.Киев просп. Победы дом 1, кв 1
2) Киевская обл. г. Ирпень ул. Садовая дом 10, кв 1

И есть сруктура, типа:

Регион | Город | Улица | Дом | Корпус | Квартира

Нужно на основе строк создать объекты данной структуры.
Чем поможет полнотекстовый поиск и чем он будет эффективнее тех же регулярок к примеру?
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751584
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIЕще раз. Есть строки типа:

1) г.Киев просп. Победы дом 1, кв 1
2) Киевская обл. г. Ирпень ул. Садовая дом 10, кв 1

Садовая Киев дом 10
Киев Садовая улица 10
Ирпень Садовая 10 Киев
...

Если даёшь пользователю одинокую строку, то не стоит надеяться на какую-то там структуру. Хочешь структуру? Дай пользователю несколько полей. Всякие модификаторы типа ул./г./пос./д... ими можно только подтереться, так как пользователь обленился и уже давно привык вводить минимум необходимой информации.

Даже так:

киев сад 10 --> город Киев, улица Садовая, дом 10
киев обл черня первом 12/1 --> Киевская область, посёлок Черняховский, переулок Первомайский, дом 12/1

должно работать, или не стоит даже заморачиваться.
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751612
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты реально не догоняешь суть задачи или прикидываешься?
Пример.
Сидит десяток менеджеров, принимают заказы по телефону и забивают адреса клиентов в одну строку в какойнить 1C.
Каждый вбивает как ему в голову взбредет или как клиент сказал. Вот и получилось хреновых 10к строк. Теперь начальнег говорит - разослать всем клиетам коммерческие предложения по почте.
Если будешь на конвертах печатать такую хрень как менеджеры вбили, письма будут до следующего пришествия по миру бродить. Соответственно нужно привести адреса к нормализованному виду и распечатать на конвертах.
При чем здесь полнотекстовый поиск?
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751679
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIКаждый вбивает как ему в голову взбредет или как клиент сказал.

ну-ка "распарсь" мне вот эту строку:

Киеская олб. улиац Садовая дом 10

умник.
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751689
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот же человек, нет что бы сказал - да, фигню сморозил, полнотекстовый поиск здесь не пришей к... так он еще и выеживается
Распаршу, поверь
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751697
УКРОП_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIТы реально не догоняешь суть задачи или прикидываешься?
Пример.
Сидит десяток менеджеров, принимают заказы по телефону и забивают адреса клиентов в одну строку в какойнить 1C.
Каждый вбивает как ему в голову взбредет или как клиент сказал. Вот и получилось хреновых 10к строк. Теперь начальнег говорит - разослать всем клиетам коммерческие предложения по почте.
Если будешь на конвертах печатать такую хрень как менеджеры вбили, письма будут до следующего пришествия по миру бродить. Соответственно нужно привести адреса к нормализованному виду и распечатать на конвертах.
При чем здесь полнотекстовый поиск?

Я вижу вы знакомы с такими проблемами.

Еще есть такая вещь что бы адрес клиента был точно как в паспорте, а в паспортном столе такое могут придумать ну просто жесть (я уже собрал много примеров из Донецкой области, там есть целая куча Макеевок, короче город в городе и т д.)
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751702
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIВот же человек, нет что бы сказал - да, фигню сморозил, полнотекстовый поиск здесь не пришей к... так он еще и выеживается
Распаршу, поверь

полнотекстовый поиск прекрасно решает задачу нечёткого поиска, с обработкой опечаток. чего ты там парсить собрался и как собираешься опечатки ловить, если по твоим же словам там сидит стадо обезьян и вбивает что попало, как попало? я уже в курсе, что ты абсолютно без понятия как решается эта задача, но зато корчишь из себя умника.
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751711
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttполнотекстовый поиск прекрасно решает задачу нечёткого поиска, с обработкой опечаток. чего ты там парсить собрался и как собираешься опечатки ловить, если по твоим же словам там сидит стадо обезьян и вбивает что попало, как попало? я уже в курсе, что ты абсолютно без понятия как решается эта задача, но зато корчишь из себя умника.
Чудик, я таких задачек десятки решил, и очепятки тоже парсятся очень хорошо, если ты не знаешь методов, это не значит что их нет!
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751736
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKI Чудик, я таких задачек десятки решил, и очепятки тоже парсятся очень хорошо, если ты не знаешь методов, это не значит что их нет!

ну так помоги человеку, выкати одно из своих десятков. или только языком молоть горазд?
...
Рейтинг: 0 / 0
Распарсить строку адреса
    #38751757
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttну так помоги человеку, выкати одно из своих десятков. или только языком молоть горазд?
Готовый скрипт не выкачу, пока они мне денюжку приносят, да и задачи не знаю и всех данных не вижу.
Но в общем алгоритм прост - сначала шум убираешь, заменяешь все спецсимволы, знаки препинания на пробелы, удаляешь двойные пробелы, все в нижний регистр, один язык, дальше делим по ключевым словам... ну а дальше в зависимости от задачи... Проще это делать на T-SQL(для меня). Если сложные алгоритмы нужно применить, то есть смысл выгрузить в приложение и прогнать через алгоритм на C#. Универсального скрипта для таких задач не существует, всегда приходится что-то допиливать. Если уже действительно лингвистический анализ нужен, то в нете можно нарыть больше 10-ка различных алгоритмов, один в чем-то лучше, другой в другом, приходится их комбинировать... но это не тот случай, думаю здесь все просто.
...
Рейтинг: 0 / 0
25 сообщений из 33, страница 1 из 2
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Распарсить строку адреса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]