Нужно определить, если ли что-то после цифры

igzdizain

Client
Регистрация
16.05.2015
Сообщения
495
Благодарностей
15
Баллы
18
Вот есть строки
Третьего Интернационала, д. 113А
3 Интернационала, д. 113А
3 Интернационала, д. 117
3 Интернационала, д. 118
3 Интернационала, д. 119
3 Интернационала, д. 119А
Третьего Интернационала, д. 128
Третьего Интернационала, д. 128а
Третьего Интернационала, д. 130
3 Сентября, д. 28
Арзамасская 3-я, д. 3
Арзамасская 3-я, д. 1
Арзамасская 3-я, д. 5
Арзамасская 3-я, д. 7
Арзамасская 3-я, д. 9
Арзамасская 3-я, д. 11
Арзамасская 3-я, д. 13
Арзамасская 3-я, д. 21
Арзамасская 3-я, д. 23
Арзамасская 3-я, д. 23, к. А
Арзамасская 3-я, д. 23А

Так вот. Нужно 1) определить, есть ли что то после номера дома: например Арзамасская 3-я, д. 23, к. А , здесь это , к. А. И если есть что то после номера дома, то я эту строку в один список, а если после номера дома ничего нет, то в другой список.
2) Каким регулярным выражением разделить по переменным то, что после номера дома? Например Арзамасская 3-я, д. 23А здесь это просто 23А. Мне надо 23 и А разделить. А здесь Арзамасская 3-я, д. 23, к. А надо отделить , к. А
 

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 807
Баллы
113
Шаблон во вложении.
 

Вложения

  • Спасибо
Реакции: igzdizain

Alexmd

Client
Регистрация
10.12.2018
Сообщения
1 021
Благодарностей
1 388
Баллы
113
1)
C#:
var list = project.Lists["список адресов"];
var kvlist = project.Lists["список адресов с квартирами"];
var domlist = project.Lists["список адресов без квартир"];
foreach(string address in list)
    if(address.Split(',').Last().Contains(" к. "))
        kvList.Add(address);
    else domList.Add(address);
list.Clear();
2)
C#:
string address = project.Variables["address"].Value;
string dom = Regex.Match(address, @"(?<=д\.\ ).*?(?=,|[A-Z]|\s)").Value;
string posle = address.Replace(address.Split(new[]{dom}, StringSplitOptions.None), "").Remove(0,dom.Length);
project.Variables["nomer_doma"].Value = dom;
project.Variables["posle_doma"].Value = posle;
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)