Начиная с версии 8.3.23 в 1С была добавлена поддержка "Регулярных выражений".
Регулярные выражения — это:
Мощный формальный язык, использующий специальные шаблоны (маски) для поиска, валидации, разбора и замены текста в строках. Это «однострочные программы», поддерживаемые почти всеми языками программирования (Python, JavaScript, Java, PHP и др.). Они позволяют быстро находить сложные совпадения, например, email-адреса, телефоны или даты.
Пример - поиск по шаблону:

Пример замены значений:
Список управляющих конструкций языка регулярных выражений:
Управляющие символы (., ?, *, +, {}, [], |, $, ^):
. Заменяет один произвольный символ a.c aac, abc ...
^ Отрицание [^0-9] Все кроме цифр. (Ставится внутри скобок)
^ Начало строки ^a Все строки, которые начинаются с буквы a (Ставится в начале строки)
| Альтернативный оператор a|b|c или [abc] Строка содержит либо "a" либо "b" либо "c".
* НОЛЬ или более символов [a-z]* Подряд может идти сколь угодно букв
+ ОДНО или более повторений [a-z]+ Должна быть минимум одна буква
? Ноль или одно повторение 0?7 7, 07
{n,k} [a-z]{1,3} Подряд может идти от одного до трех букв
{n} [a-z]{n}[0-9]{k} Сначала в строке идут n символов, потом k цифр
{n,} [a-z]{0,} Символ может встречаться n и более раз. Тоже самое [a-z]*
$ Конец строки zz$ Все строки, которые заканчиваются строкой "zz"
() Сохранение результата [a-z]{0,} Символ может встречаться n и более раз. Тоже самое [a-z]*
/s Пробел, табуляция, новая строка
/S Все, что не совпадает с /s
/w Слово
/W Все, что не совпадает с /w
/d Цифры
/D Все, что не совпадает с /d
Примеры:
\s* — игнорирует пробелы.
(\d{2}[.]\d{2}[.]\d{2,4}) — находит дату в формате дд.мм.гггг.
(\bhttps?\b) - извлекает протокол полученной ссылки.
([:8;¦=][\^-]?[|\\0()/PODIC]) - найдет все смайлики в тексте.
(?<= )(?<!\. )(?:[A-ЯЁ]{1}[а-яё]*)(?=[ ,.])-найдет все имена собственные в тексте.
Собрать необходимую маску сложного шаблона с ходу довольно затруднительно, необходимо много раз запускать код и тестировать работу, для этого и пригодится данная обработка. Для хорошего овладения всем функционалом регулярных выражений лучше пройти курс обучения.
Проверено на следующих конфигурациях и релизах:
- Бухгалтерия предприятия, редакция 3.0, релизы 3.0.191.41
Вступайте в нашу телеграмм-группу Инфостарт
