首页 数据库 mysql教程 oracle字符/字符串替换

oracle字符/字符串替换

Jun 07, 2016 pm 05:46 PM
字符串替换

在ORACLE中的字符串替换 replce、regexp_replace 和 translate函数,下面我来给大家介绍一下。

在ORACLE中的字符串替换 replce、regexp_replace 和 translate函数,下面我来给大家介绍一下。

一、语法

repalce(str_source,str1,str2)  把 str_source 中 str1 字符串替换为 str2 字符串,当 str2 为 null 或'' 时,与下个作用相同

replace(str_source,str1)         把str_source 中的 str1 字符串剔除

regexp_replace(str_source,pattern_str,rep_str) 支持正则表达式,用法类似于 replace,但功能更强大

regexp_replace(str_source,pattern_str)   把 str_source 中的 pattern_str 字符串剔除

translate(str_source,chr1,chr2) 以字符为单位,把 str_source 中的 chr1 字符对应替换为 chr2。如果 chr1 比chr2 长,那么在 chr1 中而不在 chr2 中的字符将被剔除,因为没有对应的替换字符。需注意 chr2 不能为 null 或'',否则返回值也为空


REPLACE 函数是用另外一个值来替代串中的某个值。例如,可以用一个匹配数字来替代字母的每一次出现。REPLACE 的格式如下所示:

1.REPLACE ( char, search_string [, replace_string]) 如果没有指定replace_string 变量的值,那么当发现search_string 变量的值时,就将其删除。输入可以为任何字符数据类型——CHAR、VARCHAR2、NCHAR、NVARCHAR2、CLOB或NCLOB。

--------------------------------------------------------------------------------------------------

2、REGEXP_REPLACE 函数在几个方面扩展了REPLACE 函数的功能。它支持在搜索模式中使用正则表达式,也支持本章前面描述的变量,即position、occurrence 和match_parameter,从而可以选择只替代某些匹配的值,或者不区分大小写。

 

 代码如下 复制代码

REGEXP_REPLACE( source_string, pattern 

[, replace_string 

[, position 

[, occurrence 

[, match_parameter ] 

)

除了replace_string,这里所有的变量都已经在本章前面章节作了介绍。replace_string 告诉Oracle 用什么来替代source_string 中与pattern 匹配的部分。occurrence 变量是一个非负整数,它指定操作的次数:如果为0,则所有的匹配项都被替代;如果指定一个正数,则Oracle替代第n 次匹配。

 代码如下 复制代码

1.select REGEXP_SUBSTR (Phone, 
2.'([[:digit:]]{3})-([[:digit:]]{3})-([[:digit:]]{4})' 
3.) "REGEXP_SUBSTR" 
4.from ADDRESS; 
5.REGEXP_SUBST 
6.------------ 
7.213-555-0223 
8.415-555-7530 

实例

SQL> select replace('4683,968,969',',','$') from dual;

REPLACE('4683,968,969',',','$'
------------------------------
4683$968$969

SQL> select to_number('520') from dual;

TO_NUMBER('520')
----------------
 520


------------------------------------------------------------------------------------------------------------

3、一个字符替换函数translate,不同于replace函数的是,translate函数是字符级别的替换,而不是字符串的替换。

其语法如下:

TRANSLATE ( expr , from_string , to_string )

简单的说就是对expr内容,用to_string中的字符逐一替换from_string 中的字符,举例说明如下:

 代码如下 复制代码

SQL> select translate('123456789','456','abc') from dual;

TRANSLATE
---------
123abc789

SQL> select translate('123456789','456','ab') from dual;

TRANSLAT
--------
123ab789

SQL> select translate('123456789','4564','a') from dual;

TRANSLAT
-------
123a789


select translate('abcc123a','abc','-+='),translate('abcc123a','abc','-+'),translate('abcc123a','#abc','#') from dual;

 TRANSLATE('ABCC123A','ABC','-+ TRANSLATE('ABCC123A','ABC','-+ TRANSLATE('ABCC123A','#ABC','#
------------------------------ ------------------------------ ------------------------------

-+==123-                       -+123-                         123
1、用字符'-'、'+'、'='对应替换'a','b','c'字符;

2、'abc'长度为 3,'-+'长度为 2,字符'c'没有对应的字符来替换,因此被剔除掉;

3、剔除掉字符'a'、'b'、'c',translate 有 # 的特殊用法,以 # 开头的表示所有字符

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

php怎么替换回车键 php怎么替换回车键 Mar 23, 2023 am 11:12 AM

​在PHP程序开发当中,有时需要对文本内容进行处理,其中处理中包括替换回车键。下面我们将简要介绍如何在PHP中实现替换回车键。

如何用php正则替换以什么开头的字符串 如何用php正则替换以什么开头的字符串 Mar 24, 2023 pm 02:57 PM

PHP正则表达式是一种针对文本处理和转换的有力工具。它可以通过解析文本内容,并按照特定的模式进行替换或截取,达到有效管理文本信息的目的。其中,正则表达式的一个常见应用是替换以特定字符开头的字符串,对此,我们进行如下的讲解

如何在PHP中使用正则表达式替换字符串中的特殊字符 如何在PHP中使用正则表达式替换字符串中的特殊字符 Jun 24, 2023 am 10:46 AM

随着互联网的不断发展,PHP的应用场景越来越广泛。在PHP的开发中,有时需要替换字符串中的特殊字符,这时可以使用正则表达式进行替换。本文将介绍如何使用正则表达式在PHP中替换字符串中的特殊字符。首先,了解一下正则表达式的基础知识。正则表达式是一种语言,用于描述一些字符串的模式。正则表达式包括一些特殊字符,例如.、*、 、?等,这些特殊字符有特殊的含义。在PH

php怎么从左边替换字符串 php怎么从左边替换字符串 Mar 23, 2023 pm 04:53 PM

PHP是一个广泛使用的脚本语言,可以用来开发各种Web应用和网站。在这些应用中,字符串是一个不可或缺的部分。在很多情况下,我们需要对字符串进行替换、拆分或截取等操作。本文将介绍如何在PHP中从左边替换字符串。

PHP中的preg_replace()函数:如何使用正则表达式替换字符串 PHP中的preg_replace()函数:如何使用正则表达式替换字符串 Nov 03, 2023 am 09:09 AM

PHP中的preg_replace()函数:如何使用正则表达式替换字符串,需要具体代码示例在PHP中,preg_replace()函数是一个非常强大和灵活的函数,它允许我们使用正则表达式来搜索和替换字符串。无论是去除字符串中的特定字符,还是替换特定格式的文本,preg_replace()函数可以帮助我们轻松实现。首先,我们来看一下preg_replace()

php如何替换冒号后面的11位数字 php如何替换冒号后面的11位数字 Mar 21, 2023 pm 04:32 PM

替换字符串是PHP中最基本的操作之一。替换功能在数据处理和字符串操作中至关重要,能够能够提高程序执行效率和性能。在PHP中替换字符串的函数有很多,如:substr_replace,str_replace,preg_replace等等。但是对于特定的字符串替换,可能需要使用特殊的替换规则。在本文中,我们将学习如何替换冒号后面的11位数字。

php替换空字符串失败怎么解决 php替换空字符串失败怎么解决 Mar 23, 2023 pm 03:51 PM

在PHP开发中,字符串替换是非常常见的操作。然而,有时候在进行字符串替换时,可能会遇到替换空字符串的情况,而结果却不尽如人意。本文将探讨为什么PHP替换空字符串会失败,并提供解决方案。

使用strings.Replace函数替换字符串中的子串,并设置替换次数 使用strings.Replace函数替换字符串中的子串,并设置替换次数 Jul 25, 2023 am 08:28 AM

使用strings.Replace函数替换字符串中的子串,并设置替换次数在Go语言中,我们可以使用strings.Replace函数来替换字符串中的子串。该函数的签名如下:funcReplace(s,old,newstring,nint)string其中,s表示原始字符串,old表示要被替换的子串,new表示替换后的子串,n表示替换几次。下面通

See all articles