![](/img/trans.png)
[英]Oracle SQL - Regular Expression matching using REGEXP_REPLACE()
[英]Oracle sql REGEXP_REPLACE expression to replace a number in a string matching a pattern
我有一个字符串“ ABC.1.2.3”,我希望将中间数字替换为1。
Input 'ABC.1.2.3'
Output 'ABC.1.1.3'
Input 'XYZ.2.2.1'
Output 'XYZ.2.1.1'
是的,第二次出现“。”后替换数字。 与1。
我知道我的模式是错误的,此刻我拥有的sql是:
select REGEXP_REPLACE ('ABC.1.2.8', '(\.)', '.1.') from dual;
稍后,您可以使用捕获组来引用替换字符串中的周围数字:
select REGEXP_REPLACE ('ABC.1.2.8', '([0-9])\.[0-9]+\.([0-9])', '\1.1.\2') from dual;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.