I'm trying to extract 456
from the string :123:456:
as follows:
select regexp_substr(':123:456:', ':(\d+):', 1, 2, 'i', 1) from dual
However, this query returns null
. What am I doing wrong?
oracleoracle-11gregular expression
I'm trying to extract 456
from the string :123:456:
as follows:
select regexp_substr(':123:456:', ':(\d+):', 1, 2, 'i', 1) from dual
However, this query returns null
. What am I doing wrong?
Best Answer
This works fine:
I think yours fails because the opening and closing colons won't get matched by both occurrences (because the first match is greedy).