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 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPでEnterキーを置き換える方法 PHPでEnterキーを置き換える方法 Mar 23, 2023 am 11:12 AM

PHP プログラム開発では、Enter キーの置き換えなど、テキスト コンテンツの処理が必要になる場合があります。以下に、PHP で Enter キーを置き換える方法を簡単に紹介します。

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 アプリケーションや 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 の最も基本的な操作の 1 つです。置換関数はデータ処理や文字列操作において重要であり、プログラムの実行効率とパフォーマンスを向上させることができます。 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