Функция SUBSTRING в PostgreSQL позволяет извлекать подстроку, соответствующую шаблону регулярного выражения. 45
Синтаксис: SUBSTRING(строка, шаблон). 45
Некоторые особенности работы функции:
- Шаблон должен соответствовать всей строке, иначе функция не найдёт ничего и вернёт NULL. 45
- Для выделения границ подстроки в шаблоне могут быть указаны два спецсимвола с кавычками (') после каждого. 4 В случае успешного обнаружения шаблона функция возвращает часть строки, заключённую между этими разделителями. 4
- Если шаблон содержит скобки, функция возвращает первое подвыражение, заключённое в скобки (то, которое начинается с самой первой открывающей скобки). 45
- Если регулярное выражение соответствует строке более одного раза, то возвращается только первое соответствие. 1
Пример: извлечение номера дома (от 1 до 4 цифр) из строки: 2
SELECT SUBSTRING ( 'The house number is 9001', '([0-9]{1,4})' ) AS house_no. 2
Результат: 9001. 2