Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.06;
Скачать: CL | DM;

Вниз

убрать лишнее   Найти похожие ветки 

 
Jeka   (2002-12-19 15:11) [0]

Здравствуйте мастера!
Имеется таблица вроде справочника сначала она была в Excele, потом в dbf, щас в db
Имеются поля телефон, адрес и др. Причем адрес записан полностью город,индекс,
улица. Я хотел бы удалить из этого поля(адрес) лишние(город, индекс) данные они не кчему.
Я пробывал сначала в Excele (текст по столбцам) чтоб потом удалить ненужный столбец,
но там в некоторых ячейках нет индекса или названия города и получается что например
навание улицы ставиться где восновном индекс города. Короче заморочка такая.
А в ручную удалять нет смысла слишком много данных.
Подскажите чтонибудь толковое.
Зарание благодарен!


 
DenK_vrtz ©   (2002-12-19 15:53) [1]

На вскидку!
Если данные введены последовательно город, индекс, улица, то:
1. что бы удалить индекс - это числа! Определить можно.
2. если город стоить первым, то удалять все символы до первого пробела.

Какая-нибудь есть закономерность ввода данных?

Удачи


 
Jeka   (2002-12-19 16:12) [2]

во многих записях попутано все, внекоторых че то нехватает


 
DenK_vrtz ©   (2002-12-19 16:23) [3]

Что значит попутано?
Индекс можно убрать? (исходя из того, что это набор цифр)
А если закономерностей нет, то нужен справочник городов (только где его такой взять?), по которому можно будет (может быть) определить входит ли название города в строку. А дальше дело техники!


 
TTCustomDelphiMaster ©   (2002-12-19 16:26) [4]

Индекс в строке найти не трудно 6 цифр подряд. Город тоже (исходя из предположения что вам не нужно записывать в каком городе этот адрес, то вы знаете в каком он городе) найти просто используя функции Pos. Ну и удалить из строки всякий мусор (" г.", "инд.", "индекс:", двойные пробелы и тд.).


 
Jeka   (2002-12-20 06:21) [5]

DenK_vrtz © справочник городов ненадо там один и тот же город, вот его то мне и надо удалить.
Вот примерный формат поля
Астана, 000000, ул.Такая 45 а некоторые записи
Астсна, ул.Такая 87 а есть еще
000000, ул.Другая 32
а я бы хотел просто - ул.Такая и все


 
DenK_vrtz ©   (2002-12-20 10:02) [6]

Jeka, как удалить город тебе сказал TTCustomDelphiMaster © (19.12.02 16:26), т.е. использовать функцию pos.
Про индекс уже не говорю, сказано выше!
И еще, если все улицы начинаются с "ул.<название улицы>", то ищи позицию вхождения "ул." в строке и до первого пробела после "ул." все сохраняй, включяя "ул." (хотя в этом случае могут быть проблемы, если улица имеет в названии два слова! Над этим надо подумать!!!). Потом все стираешь, а сохраненную строку копируешь!
А вот мысль пришла, как правило цифра в названии улицы пишется всегда в переди, т.е. ул.8 Марта или ул.26 Бакинских комиссаров, поэтому дойдя до первого пробела, проверь, что стоит после пробела буква или цифра. Если буква, то 80% - это улица из двух(а то и более слов), ну а, если цифра - это скорей всего номер дома.

Ух. Много написал. Дай Бог помогло! :-)


 
Jeka   (2002-12-21 10:52) [7]

Спасибо


 
Anatoly Podgoretsky ©   (2002-12-21 13:31) [8]

Создай новые поля, те которые тебе нужны, старое не удаляй
Затем выбери наиболее часто встречаемую комбинацию за основу и подели, те которые не соответствуют формату передалаешь вручную
При наличии поля с исходными данными можно алгоритм шлифовать постепенно, всегда есть первоисточник, спустя некоторе время эксплуатации поле можно будет удалить.

ЗЫ: эту работу надо поручить операторам, то есть тем кто допустил подобное безобразие.

ЗЫЫ: Есть еще разновидности, после преобразования по одному алгоритму, очищаешь источник для правильно сработавших и повторяешь другой алгоритм для оставшихся не пустых, и так несколько раз


 
Jeka   (2002-12-21 14:13) [9]

Спасибо



Страницы: 1 вся ветка

Текущий архив: 2003.01.06;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.015 c
3-14908
satron
2002-12-13 11:55
2003.01.06
Help me


1-14991
lefan
2002-12-24 09:59
2003.01.06
except


14-15273
Blacki
2002-12-14 13:29
2003.01.06
Чем собрать инсталяшку


1-15092
Masya2001
2002-12-21 21:20
2003.01.06
помогите как осущиствить?


1-15050
Fury
2002-12-24 22:04
2003.01.06
Печать в Делфи