Вы можете использовать
select split(regexp_replace("abcdefghijkl",'.*?([a-zA-Z0-9]{4})',',$1'),',') as output;
Шаблон .*?([a-zA-Z0-9]{4})
соответствует
.*?
- любые 0+ символов, как можно меньше ([a-zA-Z0-9]{4})
- Захват группы 1: 4 буквенно-цифровых символа
Совпадение заменяется на ,
и содержимое группы 1. Затем split
разделяет результат запятой.