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. [转]在ASP.NET Core使用Middleware模拟Custom Error Page功能

    本文转自:http://www.cnblogs.com/maxzhang1985/p/5974429.html 阅读目录 一.使用场景 二..NET Core实现 三.源代码 回到目录 一.使用场景 ...

  2. Java Mail邮件发送的简单实现

    1.什么是java mail JAVA MAIL是利用现有的邮件账户发送邮件的工具,通过JAVA Mail的操控,让程序自动的使用设置的邮箱发送邮件. 这一机制被广泛的用在注册激活和垃圾邮件的发送等方 ...

  3. python的if语句

    1.条件测试 (1)概念: 每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为条件测试.Python 根据条件测试的值为True还是False来决定是否执行if语句中的代码. ...

  4. csharp: DataTable结构相同的比较

    )
 ) * pageSize;
 ; i++)
 {
 DataRow newdr = newdt.NewRow();
 DataRow dr = dt.Rows[i];
 foreach (Dat ...

  5. 【基础笔记】《html&CSS设计与构造网站》一书导读

    ◉HTML 1.结构网页使用HTML HyperText Markup Language 来描述页面结构超文本标记语言允许对文本建立链接,允许对文本进行标记网页开头都有一个DOCTYPE 文档类型 声 ...

  6. 我为什么不用Django而用Flask?

    前言 对于初学者来说,找到一个好的框架来学习或者项目开发都是非常有必要的,而当你有一定开发经验后,你应该选择适合当前业务需要的框架.我这里并不想探讨哪个框架好哪个不好,这个永恒的话题就跟探讨“世界上哪 ...

  7. Zygote和System进程的启动过程

    ##init脚本的启动 +------------+ +-------+ +-----------+ |Linux Kernel+--> |init.rc+-> |app_process| ...

  8. jquery mobile 自定义图标

    Jquery Mobile框架包含了一组最常用的移动应用程序所需的图标,为了减少下载的大小,Jquery Mobile包含的是的白色的图标sprite图片,并自动在图标后添加一个半透明的黑圈以确保在任 ...

  9. Struts的学习-配置

    1.进入官网http://struts.apache.org/download.cgi#struts2513,这里为下载地址,(ps:struts-2.5.13-all版本). 2.将..\strut ...

  10. WAKE-WIN10-SOFT-GITHUB

    1,GITHUB 官网:https://github.com/ 2,软件工具 ,,,,,,