【发布时间】:2019-04-25 23:23:54
【问题描述】:
我需要使用 Reg_replace 函数删除 Oracle 字符串数据中除连字符和空格之外的所有特殊字符。请帮助。例如:
输入->
My Name is #name1输出 ->My Name is name1输入->
this is my add-ress#"输出->this is my add-ress输入->
can we remov-e this';输出->can we remov-e this
【问题讨论】:
-
您可以使用正则表达式,但您需要准确定义要删除的内容 - 或者更简单地说,您要保留的内容。例如所有字母数字字符加上破折号和空格?句号和逗号呢?等
-
需要多快? (这取决于两件事:必须处理多少数据,以及多久处理一次。)正则表达式解决方案易于编写或维护。或者,您可以使用更快的函数
translate编写解决方案,但它会更丑。 -
@Alex:是的,我想保留所有字母数字加破折号和空格。其他所有内容都需要删除(甚至逗号也需要删除)。
-
@mathguy:大约 10 万条记录。是的,我正在尝试使用 reg_exp 函数 reg_replace 但无法找出确切的语法。
标签: sql regex oracle formatting