oracle正規表示式替換(蒐藏)

2021-08-30 20:12:06 字數 2298 閱讀 1633

1、正規表示式中的元字元

元字元

意思

例子

\

說明要匹配的字元是乙個特殊字元、常量或者後者引用。(後引用重複上一次的匹配)

\n 匹配換行符

\\ 匹配 \

\( 匹配 (

\) 匹配 )

^匹配字串的開頭位置

如果a是字串的第乙個字元,^a 匹配 a

$

匹配字串的末尾位置

如果b是字串的最後乙個字元,$b 匹配 b

*

匹配前面的字元0次或多次

ba*rk可以匹配 brk、bark、baark等等

+匹配前面的字元1次或多次

ba+rk可以匹配 bark、baark等等,但是不能匹配brk,也就是說,最少有以一次。

?匹配前面的字元0次或1次

ba?rk可以匹配 bark、brk等等,但是不能匹配baark。

匹配前面的字元恰好是n次,其中n是整數

hobit可以匹配hobbit

匹配前面的字元至少是n次,最多是m次,其中n,m都是整數

hobit可以匹配hobbit或者hobbbit

.匹配除null以外的任意單個字元

hob.it中的.可以是任意的單個字元,如:hobsit等等

(pattern)

括號中pattern是乙個子正規表示式,匹配指定pattern模式的乙個子表示式。

如:aaa(x|y)可以匹配aaax或者aaay。

x|y匹配「或」

x|y可以匹配x或者y

[abc]

可以匹配abc中的任何單個字元

hello[abc]可以匹配helloa,hellob,helloc

[a-z]

可以匹配指定範圍內的任何單個字元

hell[a-z]可以匹配hello或者hellz

[::]

指定乙個字元類,可以匹配該類中的任何字元

[:alphanum:]可以匹配字元0-9、a-z、a-z

[:alpha:]可以匹配字元a-z、a-z

[:blank:]可以匹配空格或tab鍵

[:digit:]可以匹配數字0-9

[:graph:]可以匹配非空字元

[:lower:]可以匹配小寫字母a-z

[:print:]與[:graph:]類似,不同之處在於[:print:]包括空格字元

[:punct:]可以匹配標點符號.,""等等

[:space:]可以匹配所有的空字元

[:upper:]可以匹配大寫字母a-z

[:xdigit:]可以匹配十六進製制數字0-9、a-f、a-f

\n這是對前一次匹配命中的乙個後引用,其中n是乙個正整數

(.)\1可以匹配兩個連續相同的非空字元。(.)可以匹配除null以外的任何單個字元,而\1則重複上一次匹配的內容,即再次匹配相同的字元,因此可以匹配兩個連續相同的非空字元

2、regexp_like(x,pattern[,match_option])用於在x中查詢正規表示式pattern,該函式還可以提供乙個可選的引數match_option字串說明預設的匹配選項。match_option的取值如下:

『c』   說明在進行匹配時區分大小寫(預設值);

'i'   說明在進行匹配時不區分大小寫;

'n'   允許使用可以匹配任意字元的操作符;

'm'   將x作為乙個包含多行的字串。

sql **

3、regexp_instr(x,pattern[,start[,occurrence[,return_option[, match_option]]]])用於在x中查詢pattern。返回pattern在x中出現的位置。匹配位置從1開始。可以參考字串函式 instr(),引數相關:

'start'   開始查詢的位置;

'occurrence'   說明應該返回第幾次出現pattern的位置;

'eturn_option'   說明應該返回什麼整數。若該引數為0,則說明要返回的整數是x中的乙個字元的位置;若該引數為非0的整數,則說明要返回的整數為x中出現在pattern之後的字元的位置;

'match_option'   修改預設的匹配設定。

sql **

5、regexp_substr(x,pattern[,start[,occurrence[, match_option]]])用於在x中查詢pattern並返回。可以參考字串函式 substr(),引數同regexp_instr函式,參考第3

sql **

正規表示式替換

正規表示式替換 每行的資料格式為 vcbi zuuu 001a465 kakid legos 要求變為格式為 vcbizuuu001 a465 kakid legos 替換掉第一部分和第二部分中間的空格,第二部分和第三部分中間的空格,其他的保持乙個空格 string originalstring v...

正規表示式 替換

正規表示式 替換 正規表示式 符合一定規則的而表示式.作用 用於專門操作字串。特點 用於一些特定的符號來表示一些 操作。這樣就簡化書寫。所以學習正規表示式 好處 可以簡化對字串的複雜操作。弊端 符號定義越多,正則越長,閱讀性越差 具體操作功能 1,匹配 string matches 方法.用規則整個...

正規表示式 替換

好了,現在終於到了解決3位或4位區號問題的時間了。正規表示式裡的替換指的是有幾種規則,如果滿足其中任意一種規則都應該當成匹配,具體方法是用 把不同的規則分隔開。聽不明白?沒關係,看例子 0 d d 0 d d 這個表示式能匹配兩種以連字型大小分隔的 號碼 一種是三位區號,8位本地號 如010 123...