psql 解析没有定界符的字符串

psql parse string with no delimiter

我请求正则表达式帮助解析以下字符串:

154211202251206660

输出需要这样格式化:

1-54211-20225-12066-60

字符串长度始终相同,断点 (-) 始终相同。 非常感谢!

PostgreSQL 9.1.9

将以下正则表达式与 capturing group

结合使用
^(\d)(\d{5})(\d{5})(\d{5})(\d{2})$

Regex explanation here.


正则表达式可以与 regex_replace()

一起使用
regexp_replace(
    TheColumn, '^(\d)(\d{5})(\d{5})(\d{5})(\d{2})$', '----'
)