【发布时间】:2020-03-24 23:55:50
【问题描述】:
我必须在给定字符串 (varchar2) 中每 5 个字符后放置一个字符串。 给定的字符串可以有不同的长度。 我已经通过使用子字符串的循环解决了它。 有什么方法可以在 Oracle DB 中使用 REGEXP 实现目标?
【问题讨论】:
标签: sql regex oracle regexp-replace
我必须在给定字符串 (varchar2) 中每 5 个字符后放置一个字符串。 给定的字符串可以有不同的长度。 我已经通过使用子字符串的循环解决了它。 有什么方法可以在 Oracle DB 中使用 REGEXP 实现目标?
【问题讨论】:
标签: sql regex oracle regexp-replace
您可以使用REGEXP_REPLACE 将每 5 个字符替换为这 5 个字符后跟另一个字符串。例如:
SELECT REGEXP_REPLACE('ABCDE12345FGHIJ67890KL', '(.{5})', '\1*') FROM DUAL
输出:
ABCDE*12345*FGHIJ*67890*KL
【讨论】: