Функция REGEXPFIND: различия между версиями
Материал из Planfix
Artem (обсуждение | вклад) Нет описания правки |
Artem (обсуждение | вклад) Нет описания правки |
||
Строка 32: | Строка 32: | ||
*Регулярные выражения в ПланФиксе выполняются с опциями Pattern.DOTALL и Pattern.MULTILINE. В онлайн [https://regex101.com/ валидаторе] — [https://p.pfx.so/pf/nG/2iUOoF.png gms]. | *Регулярные выражения в ПланФиксе выполняются с опциями Pattern.DOTALL и Pattern.MULTILINE. В онлайн [https://regex101.com/ валидаторе] — [https://p.pfx.so/pf/nG/2iUOoF.png gms]. | ||
*В результат обработки текста при помощи регулярного выражения попадает первая capturing группа. Соответственно, то, что нужно, чтобы было в результате, надо взять в скобки, а остальные группы сделать non-capturing (?:). | *В результат обработки текста при помощи регулярного выражения попадает первая capturing группа. Соответственно, то, что нужно, чтобы было в результате, надо взять в скобки, а остальные группы сделать non-capturing (?:). | ||
*[[Экранирование ковычек]] | *Для того, чтобы регулярным выражением получить данные из строки с кавычками внутри, их необходимо [[Экранирование ковычек |экранировать]]. | ||
Версия от 10:59, 6 февраля 2023
Функция REGEXPFIND позволяет выделять нужный фрагмент текста из переменной или инфоблока.
Формат
- REGEXPFIND(text; pattern)
Аргументы:
- text — обязательный, текст, где ищем регулярным выражением.
- pattern — обязательный, регулярное выражение.
Примеры
Формула | Описание | Результат |
---|---|---|
REGEXPFIND("Куплю 30000$"; "(\d+)") | Из текста регулярным выражением извлекаем число | 30000 |
Важно
- Регулярные выражения в ПланФиксе выполняются с опциями Pattern.DOTALL и Pattern.MULTILINE. В онлайн валидаторе — gms.
- В результат обработки текста при помощи регулярного выражения попадает первая capturing группа. Соответственно, то, что нужно, чтобы было в результате, надо взять в скобки, а остальные группы сделать non-capturing (?:).
- Для того, чтобы регулярным выражением получить данные из строки с кавычками внутри, их необходимо экранировать.