Postgresql:用两个不同的分隔符拆分列

Postgresql:用两个不同的分隔符拆分列,postgresql,Postgresql,我有一个字符串,比如: gg__1234_1232 我想将_uu之后的字符串拆分为一个单独的列。我尝试过使用SPLIT_PARTstring,''uuuuu',2,但是这会返回整个字符串,而不是用两个下划线分隔:''uuuu,只用一个下划线分隔它',然后抓取下一个元素: SELECT split_part('gg__1234_1232', '_', 3); 当然,如果是任意数量的下划线,这将不起作用。如果是这种情况,那么可以先用regexp_replace点击字符串,将多个下划线压缩成一个下

我有一个字符串,比如:

gg__1234_1232

我想将_uu之后的字符串拆分为一个单独的列。我尝试过使用SPLIT_PARTstring,''uuuuu',2,但是这会返回整个字符串,而不是用两个下划线分隔:''uuuu,只用一个下划线分隔它',然后抓取下一个元素:

SELECT split_part('gg__1234_1232', '_', 3);
当然,如果是任意数量的下划线,这将不起作用。如果是这种情况,那么可以先用regexp_replace点击字符串,将多个下划线压缩成一个下划线,然后用split_part点击:

SELECT split_part(REGEXP_REPLACE('gg_1234_1232','[_]+','_'), '_', 2);