【发布时间】:2015-07-26 06:55:58
【问题描述】:
谁能帮我写一个 Oracle REGEXP_REPLACE 语句来为这样的数字添加破折号...
5310009618390
5310-00-961-8390
我想我需要 regexp_replace 但也许不需要,也许只是替换 witll 工作。两者都试过了,都没有成功。
select replace(t.column, 5310009618390, '-') from table t
【问题讨论】:
-
您尝试过SUBSTRING吗? SELECT SUBSTRING(t.column,0,4) + '-' + SUBSTRING(t.column,4,2) + '-' 等
-
不,我没有试过那个 Malanie。最终目标是更新数据库,我现在使用 select 只是为了测试。
-
Oracle 在 regexp_replace 上提供的第一个示例是电话号码问题,它非常非常接近提供的解决方案。 docs.oracle.com/cd/B28359_01/server.111/b28286/….
-
感谢帕特里克,我确实在搜索中看到了该页面,但未能向下滚动足够远以查看示例。现在将看看它是否有助于我更好地理解 Gary 的解决方案。
标签: oracle replace regexp-replace