我有一个有趣的方案是在数字,字母和数字之间添加- (minus sign)
。
示例:
输入:123AB56;输出:123-AB-56;
输入:56XYZ777;输出:56-XYZ-777;
源数据没有常规模式。
对此的任何意见表示赞赏。
答案 0 :(得分:3)
如果是相对较晚的Oracle,那么这些任务就会regexp_replace
:
SELECT
REGEXP_REPLACE(YOURFIELD,
'([[:digit:]]+)([[:alpha:]]+)([[:digit:]]+)',
'\1-\2-\3') REPLACED_RESULTS
FROM YOURTABLE;