【发布时间】:2015-09-30 07:34:15
【问题描述】:
我一直在尝试找到一个正则表达式来匹配以下表达式中的数字,但我需要某个组。
例如:
Vdsl 1.10.4
如何匹配10
我还需要一个匹配 4
的表达式P.S 我使用正则表达式风格的 Oracle SQL 函数 regex_substr()
谢谢
编辑:
我想我找到了解决方法:
-
使用 REGEXP_SUBSTR() 您可以将其与点匹配:'.10.'然后使用 REGEXP_REPLACE 可以提取数字。
REGEXP_REPLACE(REGEXP_SUBSTR('Vdsl 1.10.4','.\d+.'), '.(\d+).', '\1')
-
最后一个数字
REGEXP_REPLACE(REGEXP_SUBSTR('Vdsl 1.10.4','.\d+$'), '.(\d+)', '\1')
【问题讨论】:
-
没有点。应该是 10