Имя: Пароль:
1C
1С v8
Регулярные выражения для поиска в строке.
0 lirt82
 
22.04.26
10:16
Так как тема сдана в архив
Из строки выделить слово.
продолжу в новой.
Есть строка
НаименованиеОфиса = "РФ, 119334, (Москва, ул. Вавилова, дом № 5, корпус 3, помещ. 2П, этаж 3)";
по условию задачи необходимо выделить из этой строки название города. В примере это "Москва", шаблон строки строгий,
"хххххххх(<НазваниеГорода>,ххххххххххххх)" х - любой символ, включая пробел.
т.е. необходимо сформировать название города начиная от первой скобки "(" и заканчивая первой запятой после этой скобки.
Решение
НаименованиеОфиса = "РФ, 119334, (Москва, ул. Вавилова, дом № 5, корпус 3, помещ. 2П, этаж 3)";  
Город = СтрНайтиПоРегулярномуВыражению(НаименованиеОфиса,"(?<=\().*?(?=,)").Значение;
но теперь выяснилось что пользователи заполняют поле по-разному:)
1) "РФ, г.Москва, ул. Вавилова, дом № 5, корпус 3, помещ. 2П, этаж 3"
2) "РФ, 119334, (г.Москва, ул. Вавилова, дом № 5, корпус 3, помещ. 2П, этаж 3)"
3) "ул. Вавилова, дом № 5, корпус 3, помещ. 2П, этаж 3, г.Москва"
как задать в параметрах поиска регулярного выражения поиск по "г."? т.е. в поле пользователи обязательно перед названием города всегда используют "г." после точки может быть пробел или не может быть пробела. "г. Москва" или "г.Москва"
1 Garykom
 
гуру
22.04.26
10:18
Открой для себя поиск Гугла с его Режим ИИ
https://share.google/aimode/zgeVZxKc0O3HCNxVx
2 Garykom
 
гуру
22.04.26
10:21
(1)+ Но он только на конкретный вопрос отвечает
За тебя сам не подумает (обычно) что населенные пункты не только г. бывают
Еще есть разные пгт. или с. или д. и т.д.
https://share.google/aimode/lZNP038iN8qB3Nebi
3 Garykom
 
гуру
22.04.26
10:24
(2)+ А еще бывают приколы когда два в одном!
Ну типа "г. ТакойТо пгт. Сякой"
https://share.google/aimode/baPVoICgQ5nb6zKf3
4 lirt82
 
22.04.26
14:19
почему-то на сайте https://regex101.com/
отрабатывает
https://ibb.co.com/ycDbPwx0

а в коде ошибка
https://ibb.co.com/PvwK4Wpb
5 Garykom
 
гуру
22.04.26
14:34
(4) Формат-стандарт регулярок не совсем совпадает
Вроде в платформе 1C по ICU
https://www.ibm.com/docs/ru/capm?topic=builder-icu-regular-expressions
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший