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. Sql server 操作笔记

    (1)更改字段类型 (2)添加字段 alter table class add InKinDate intEXECUTE sp_addextendedproperty N'MS_Description ...

  2. netty笔记(一)--Demo

    Netty是一个Java开源框架,用于传输数据.由server和client组成,封装了Java nio,支持TCP, UDP等协议.这里写了一Demo EchoClientHandler.java ...

  3. 常见的media断点

    landscape mode是指宽度比高度宽的模式,也就是俗称的宽屏模式: portrait mode是指高度比宽度高的模式,也就是俗称的竖屏模式: /*#region SmartPhones */ ...

  4. sass(混合mixin的调用、@content)

    sass中使用@mixin声明混合,可以传递参数,参数名以$符号开始,多个参数以逗号分开,也可以给参数设置默认值.声明的@mixin通过@include来调用 1.无参数mixin scss.styl ...

  5. Web前端面试指导(七):入职后的建议

    7.2 关于合同 签合同的时候,看公司要求,有些是3年,有些是5年,不要怕,签了就是了,真到想走的时候,提前说一声,随时可以走,不存在什么违约赔偿. 注意:你的合同和薪资都是属于保密的,不能让公司其他 ...

  6. drupal基础

    http://www.cnblogs.com/yaoliang11/archive/2009/07/31/1535883.html

  7. mui使用技巧

    1.document.addEventListener('plusready', function(){ //console.log("所有plus api都应该在此事件发生后调用,否则会出 ...

  8. Android ViewPager+TabHost实现首页导航

    今天发的是TabHost结合ViewPager实现首页底部导航的效果,虽然说网上有很多这样的Demo,不过呢,我还是要把自己练习写的发出来,没错!就是这么任性: 先上效果图,如下: 代码里面有注释,就 ...

  9. 好记性不如烂笔头-nginx安装环境与Linux安装ftp组件

    Nginx安装环境 1. Nginx安装环境 Nginx是C语言开发,建议在linux上运行,我参加工作这些年来一直使用Linux发行版之一的 Centos作为安装环境. 1.1 gcc 安装Ngin ...

  10. solidity语言4

    引用类型(Reference Types) memory 不支持持久保存 storage 保留为变量 复杂类型如arrays和structs,有附加信息,'data location',提示存储在'm ...