【轉】Oracle 正規表示式函式-REGEXP_REPLACE 使用例子

散葉涔發表於2012-04-22

6個引數

第一個是輸入的字串

第二個是正規表示式

第三個是替換的字元

第四個是標識從第幾個字元開始正規表示式匹配。(預設為1

第五個是標識第幾個匹配組。(預設為全部都替換掉)

第六個是是取值範圍:

i:大小寫不敏感;

c:大小寫敏感;

n:點號 . 不匹配換行符號;

m:多行模式;

x:擴充套件模式,忽略正規表示式中的空白字元。

全部測試資料

SQL> select * from test_reg_substr;

A

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

ABC123XYZ

ABC123XYZ456

Edward

替換數字

SQL> SELECT

2 REGEXP_REPLACE (a,'[0-9]+','QQQ') AS A

3 FROM

4 test_reg_substr;

A

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

ABCQQQXYZ

ABCQQQXYZQQQ

Edward

替換數字(從第一個字母開始匹配,替換第1個匹配專案)

SQL> SELECT

2 REGEXP_REPLACE (a,'[0-9]+','QQQ', 1, 1) AS A

3 FROM

4 test_reg_substr;

A

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

ABCQQQXYZ

ABCQQQXYZ456

Edward

替換數字(從第一個字母開始匹配,替換第2個匹配專案)

SQL> SELECT

2 REGEXP_REPLACE (a,'[0-9]+','Q', 1, 2) AS A

3 FROM

4 test_reg_substr;

A

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

ABC123XYZ

ABC123XYZQ

Edward

替換第二個單詞

SQL> SELECT

2 REGEXP_REPLACE (a,'\w+','Kimi', 1, 2) AS A

3 FROM

4 test_reg_substr;

A

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

ABC123XYZ

ABC123XYZ456

Kimi

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26892340/viewspace-721964/,如需轉載,請註明出處,否則將追究法律責任。

相關文章