Частая задача в регулярках — извлечь конкретную группу вместо всего совпадения.
Например:
— строка =
'abc'— паттерн =
'a(.)c'— группа 1 =
'b'regexp_substr в Oracle и MySQL так не умеет, а Postgres требует указывать 4 дополнительных параметра.Поэтому для SQLite я запилил отдельную функцию regexp_capture, которая делает ровно это — извлекает конкретную группу из совпадения:
select regexp_capture('abc', 'a(.)c', 1);
-- b