如何使用regexp在字符串后提取数字?

时间:2017-10-20 07:55:10

标签: sql oracle11g

我需要使用regexp或任何其他可能的函数提取给定字符串中最后一个字母后面的数字/数字。

例如,如果字符串为'a23kfj879lp999',我只需要999,因为字符串中的最后一个字母是p

1 个答案:

答案 0 :(得分:1)

使用REGEX_SUBSTR功能:

SELECT REGEXP_SUBSTR('a23kfj879lp999', '([0-9]+)$') FROM dual

说明:

REGEX_SUBSTR只是从源字符串中提取与相应模式匹配的第一个子字符串。

语法:

REGEXP_SUBSTR( string, pattern [, start_position [, nth_appearance [, match_parameter [, sub_expression ] ] ] ] )