甲骨文的SQL REGEXP_REPLACE匹配(Oracle SQL Regexp_replace

2019-07-31 21:43发布

这是一个时髦的匹配,我需要完成的任务。

A5.1.9.11.2

需要成为:

A05.01.09.11.02

DOT部分的金额会有所不同从无到多。 和字母“A”将永远存在,永远做1个字符。

我想使用REGEXP_REPLACE()函数,以使用这个作为一个分类机构。 谢谢。

Answer 1:

甲骨文的SQL不支持环视断言,这将是这种情况下非常有用:

s/([0-9](?<![0-9]))/0\1/g

你必须使用至少两种替代品:

REGEXP_REPLACE(REGEXP_REPLACE(col, '([0-9]+)', '0\1'), '0([0-9]{2})', '\1')


文章来源: Oracle SQL Regexp_replace matching