Сокращенный кадастровый номер

MapInfo, MapBasic
Ответить
jan333
Новоприбывший
Сообщения: 2
Зарегистрирован: 24 дек 2015, 03:17
Репутация: 1

Сокращенный кадастровый номер

Сообщение jan333 » 08 сен 2017, 10:11

Добрый день. Есть таблица mapinfo с полигонами, в колонке которой прописаны кадастровые номера. Как создать в этой таблице вторую колонку с сокращенными кадастровыми номерами? Т.е. из формата "00:1112233:456" преобразовать в формат ":456".

trir
Гуру
Сообщения: 3259
Зарегистрирован: 09 апр 2010, 19:30
Статьи: 1
Репутация: 535
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: Сокращенный кадастровый номер

Сообщение trir » 08 сен 2017, 10:34

удалено
Последний раз редактировалось Александр Мурый 08 сен 2017, 10:46, всего редактировалось 1 раз.
Причина: нарушение правил форума, п. 3.1.2

freeExec
Гуру
Сообщения: 664
Зарегистрирован: 23 апр 2011, 10:32
Проекты: 1
Репутация: 95
Откуда: Ульяновск

Re: Сокращенный кадастровый номер

Сообщение freeExec » 08 сен 2017, 11:06

Я не гуру в regexp, но вот так удалось выцепить:

Код: Выделить всё

(\:\w+)$

trir
Гуру
Сообщения: 3259
Зарегистрирован: 09 апр 2010, 19:30
Статьи: 1
Репутация: 535
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: Сокращенный кадастровый номер

Сообщение trir » 08 сен 2017, 11:13

по идее

Код: Выделить всё

(\:\d+)$

Sibit
Активный участник
Сообщения: 196
Зарегистрирован: 21 окт 2009, 13:29
Проекты: 1
Репутация: 26
Откуда: Новосибирск

Re: Сокращенный кадастровый номер

Сообщение Sibit » 08 сен 2017, 12:14

Если сокращенный номер состоит из одинакового числа символов, то Right$(Название_моего_поля,4) . Если содержит пробелы на конце, то можно добавить еще и их удаление : Right$(RTrim$(Название_моего_поля),4) . Но если значения разной длинны, то из интерфейса - никак, придется небольшой скрипт писать. Или через импорт в Excel или другой инструмент поддерживающий такие операции.

З.Ы. trir, freeExec, вы обратили внимание на название форума? Или готовы продемонстрировать ваше решение в Mapinfo?

jan333
Новоприбывший
Сообщения: 2
Зарегистрирован: 24 дек 2015, 03:17
Репутация: 1

Re: Сокращенный кадастровый номер

Сообщение jan333 » 08 сен 2017, 18:10

Спасибо, Sibit. Вы дали направление, в котором поискать решение, а это Справочник MapBasic. Функция Right$ подходит для фиксированного количества цифр после второго двоеточия в полном кадастровом номере, т.е. либо :1-:9, либо :10-:99, либо :100-:999.
А вот функция Mid$ ищет то, что нужно. Поскольку формат кадастрового квартала фиксированный, извлекаем сокращенный кадастровый номер с 14й позиции - Mid$(Название_моего_поля,14,12)

Ответить

Вернуться в «MapInfo»