使用Oracle SQL函数替换多个特殊字符

问题描述 投票:0回答:1

是否有任何方法可以替换Oracle SQL中的多个特殊字符。我尝试过replace(column_name, '@,?.',' '),但无法正常工作

sql oracle oracle-sqldeveloper
1个回答
0
投票

您可以嵌套replace()的多个调用,但是很快就变得很复杂。

另一方面,regexp_replace()对此非常有用:

regexp_replace(column_name, '@|,|\?|\.', ' ')

竖线字符(|)表示。在正则表达式中,点(.)和问号(?)是有意义的字符,因此需要使用反斜杠(\)进行转义。


0
投票

您也可以检查translate功能

translate


0
投票

类似这样的操作会“删除”除数字,字母和空格(如果您要的是空格)以外的所有内容。

translate('my ,string@with .special chars','@,?.','')
© www.soinside.com 2019 - 2024. All rights reserved.