replace语法:

REPLACE(char,search_string,[replacement_string])

在replace中,每个search_String 都会被replacement_string替换掉,而replacement_string可以为null或者空字符串,search_String会被移除,而如果search_String为空字符串时,会返回原来的字符串。

①当replacement_string=null或者replacement_string=‘’:

select REPLACE('helloword','','l') from dual;

----------
helloword

②当search_String=‘’:

select REPLACE('helloword','','l') from dual;

----------
helloword

③没有缺省值或空值情况:

select REPLACE('helloword','e','l') from dual;
----------
hllloword

translate语法:

TRANSLATE(char,from_string,to_string)

返回出现在from_string中每个字符将会被to_string相对应的字符所替代,而且三个字符串都不可以为null或空字符串,当任意一个为空字符串时,返回为null。

①正常情况下:

select TRANSLATE('asdfg','as','qw') from dual;

----------
qwdfg

②from_string字符数量大于to_string:多余部分会被删掉:

SELECT TRANSLATE('asdfg','asc','qw') FROM DUAL;
-----
qwdfg

③from_string字符数量小于to_string:对应字符被替代,剩余部分不变:

select TRANSLATE('asdfg','a','qw') from dual;

----------
qsdfg

④from_string或者to_string为空字符串,将得到空值:

 select TRANSLATE('asdfg','','qw') from dual;
select TRANSLATE('asdfg','as','') from dual; ----------
(null)

特殊字符替换:

用TRANSLATE()函数把能替换掉的特殊字符放在from_string中,而to_from中仅填一个空格字符,也就是把字符串char中第一个from_string中的符号用空格字符代替,剩下的所有特殊字符都会被删掉,

剩下的问题就是解决一下空格的问题,空格我是用REPLACE()函数替换掉的,所以替换掉特殊符号以及空格整体如下:只要在from_string中添加想要去掉的特殊符号就可以!

1 translate(char,'$/\:*?"<>''|;[]{},.():;‘’“”【】《》,。()?、',' ');
2
3 select REPLACE(translate('char','$/\:*?"<>''|;[]{},.():;‘’“”【】《》,。()?、',' '),' ','') from dual;

注意点:

①中英文符号一定要注意区分!比如中文的双引号,单引号,都是不一样的。
②oracle中单引号的问题,需要用一个单引号转义,下一个单引号才能代表的是单引符号,用代码说明一下:

 select 'hello'' word' from dual;

 ----------
hello' word

一共四个单引号,第一个跟第四个代表的是字符串的引号,第二个带引号视为转义下一个单引号,第三个单引号才是我们真正想要的输出的单引号。所以在替换掉单引号这个特殊符号,我们在from_string中一定要转义。

 SELECT TRANSLATE('hello'' word','''','^') FROM DUAL;

 ------
HELLO^ WORD

oracle中特殊字符替换的更多相关文章

  1. oracle中 特殊字符 转义 (&)

    在dml中,若操作的字符中有 & 特殊字符,则会被oracle视作是输入变量的标志,此时需要用转义字符来进行转义. 1.”&“ 转义 这个是Oracle里面用来识别自定义变量的设置,现 ...

  2. oracle中的替换函数replace和translate函数

    .translate 语法:TRANSLATE(char, from, to) 用法:返回将出现在from中的每个字符替换为to中的相应字符以后的字符串. 若from比to字符串长,那么在from中比 ...

  3. Oracle中如何插入特殊字符:& 和 ' (多种解决方案)

    今天在导入一批数据到Oracle时,碰到了一个问题:Toad提示要给一个自定义变量AMP赋值,一开始我很纳闷,数据是一系列的Insert语句,怎么会有自定义变量呢?后来搜索了一下关键字AMP发现,原来 ...

  4. Oracle中如何插入特殊字符:& 和 ' (多种解决方案)-转载

    文章出处:http://blog.sina.com.cn/s/blog_5f39af320101gb3f.html 今天在导入一批数据到Oracle时,碰到了一个问题:Toad提示要给一个自定义变量A ...

  5. Oracle中如何插入特殊字符: &amp;amp; 和 &amp;#39; (多种解决方案)

    Oracle中如何插入特殊字符:& 和 ' (多种解决方案)今天在导入一批数据到Oracle时,碰到了一个问题:Toad提示要给一个自定义变量AMP赋值,一开始我很纳闷,数据是一系列的Inse ...

  6. 转载和补充:Oracle中的一些特殊字符

    oracle通配符,运算符的使用 用于where比较条件的有: 等于:=.<.<=.>.>=.<> 包含:in.not in exists.not exists 范 ...

  7. 【转】oracle & 和 ' 特殊字符处理 ( like 'GAC/&_%' escape '&'; 这里面的 / 居然将& 转义了 为什么?)

    原文地址:http://blog.csdn.net/gjswxhb/article/details/6083242 今天在导入一批数据到Oracle时,碰到了一个问题:Toad提示(plsql 也一样 ...

  8. Oracle中的CHR()函数与ASCII()函数

    工作中经常会处理一些因特殊字符而导致的错误,如上周我就遇到了因为换行符和回车符导致的数据上报的错误,这种错误比较难以发现,通常是由于用户的输入习惯导致的,有可能数据极少,就那么几行错误从而导致整个数据 ...

  9. oracle中函数和存储过程的区别和联系【转载竹沥半夏】

    oracle中函数和存储过程的区别和联系[转载竹沥半夏] 在oracle中,函数和存储过程是经常使用到的,他们的语法中有很多相似的地方,但也有自己的特点.刚学完函数和存储过程,下面来和大家分享一下自己 ...

随机推荐

  1. 如何优化VMWare虚拟机的运行速度(转)

    虚拟机是个好东西,但是对电脑有一定的要求.尤其对做工控的来说都需要安装一些大型的软件(其中WINCC最难装,对系统要求较高.而且像WIN 7 64位的就别想装上去了,如果改系统后那4G以上的内存不就浪 ...

  2. 数据库中存放着HTML并附带样式,如何在界面上对已有的样式进行修改

    在工作中遇到这样一个问题,数据库中存放着HTML代码,并且还带有样式,我要在界面上修改他已经写好的样式,例如把这个字段的字体改成微软雅黑,数据库中对应字段内容如下图 在界面面上是直接把上图这段HTML ...

  3. openlayers 3 读取展示shp文件

    简单的思路如下: 1.在arcgis中获得shp文件 2.将其转成geojson文件 3.用openlayers进行展示 第一步直接省略 第二步这里推荐一个shp转geojson很方便的工具网站htt ...

  4. 【转载】BaseDao设计

    BaseDao接口设计 1 import java.util.List; /** * Dao接口,定义Dao基本操作 由BaseDaoImpl实现 * @author wht * @param < ...

  5. 微服务学习笔记二:Eureka服务注册发现

    Eureka服务注册发现 服务发现:云端负载均衡,一个基于 REST 的服务,用于定位服务,以实现云端的负载均衡和中间层服务器的故障转移. 1. Service Discovery: Eureka S ...

  6. css3制作有动画效果的面板

    .show-panel .slide-panels{ right: 0px; } .slide-panels{ z-index: 101; background: #fff; position: fi ...

  7. (转)Android新的menu实现——ActionMode

    Android的menu有多种实现方式,以前写过一篇Android中五种常用的menu(菜单),这里介绍一种新的menu实现方式:ActionMode.ActionMode是Android 3.0以后 ...

  8. Network Request Failed

    在react native项目中,有时候调用接口会出现这样的错误提示:“Network Request Failed”. 一.模拟器上报“Network Request Failed”解决办法,也是官 ...

  9. Android端访问服务器核心代码

  10. Oracle分析函数列表分享

    SUM        :该函数计算组中表达式的累积和 MIN        :在一个组中的数据窗口中查找表达式的最小值 MAX        :在一个组中的数据窗口中查找表达式的最大值 AVG     ...