【发布时间】:2019-02-06 05:28:10
【问题描述】:
我在下面有一个示例字符串。
"MHV9DRDUY7 Confirmed.on 31/8/18 at 10:18 AMKsh9,500.00 received from 25470000000 JAMES BOND.New Account balance is Ksh12,050,100"
我想使用 SQL 从主字符串中删除子字符串 "New Account balance is Ksh12,050,100"。
请注意,子字符串 (Ksh12,050,100) 中的数量不是固定的,因此我在使用 REGEXP_REPLACE 时遇到了挑战。
【问题讨论】:
-
您在使用
REGEXP_REPLACE()时遇到什么问题?任何正则表达式教程都会解释如何匹配不固定的字符序列。 -
要删除的部分总是在字符串的末尾吗?
-
您是否尝试过使用 replace(field, 'New Account balance is ([A-Za-z0-9,]*)','')?
-
@Aleksej 是的,它总是在字符串的末尾。
-
@Gowdhaman008 已使用。 REGEXP_REPLACE (field,'新账户余额为 (Ksh[0-9]+(,[0-9]+)(.[0-9]+)*)','') 感谢您的提醒。工作过
标签: sql regex oracle oracle11g regexp-replace