1

申し訳ありませんが私の英語

私はこのクエリを持っています

select regexp_replace('Hello OBLIG: 451451, world OBLIG: 12123456789, Task OBLIG: 789456123, world ', '(OBLIG: )([^,]*)', '\1\2' , 'g')

私はこのようなものを返す必要があります

Hello OBLIG: 1451, world OBLIG: 6789, Task OBLIG: 6123, world

「OBLIG:」の後の数字は最後の 4 桁である必要があります

何か案が?

4

1 に答える 1

2

あなたはほとんどそこにいました。

select regexp_replace(
    'Hello OBLIG: 451451, world OBLIG: 12123456789, Task OBLIG: 789456123, world ', 
    '(OBLIG: )([[:digit:]]*)([[:digit:]]{4})', '\1\3' ,
    'g'
);

もちろん、これは常に各数字が少なくとも 4 桁あることを前提としています。

于 2015-06-02T06:30:43.353 に答える