溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Oracle如何通過(guò)正則表達(dá)式分割字符串REGEXP_SUBSTR

發(fā)布時(shí)間:2021-07-29 14:07:59 來(lái)源:億速云 閱讀:1539 作者:小新 欄目:數(shù)據(jù)庫(kù)

這篇文章主要介紹Oracle如何通過(guò)正則表達(dá)式分割字符串REGEXP_SUBSTR,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

REGEXP_SUBSTR函數(shù)格式如下:

function REGEXP_SUBSTR(string, pattern, position, occurrence, modifier)

string :需要進(jìn)行正則處理的字符串
pattern :進(jìn)行匹配的正則表達(dá)式
position :起始位置,從第幾個(gè)字符開(kāi)始正則表達(dá)式匹配(默認(rèn)為1)
occurrence :標(biāo)識(shí)第幾個(gè)匹配組,默認(rèn)為1
modifier :模式(‘i'不區(qū)分大小寫(xiě)進(jìn)行檢索;'c'區(qū)分大小寫(xiě)進(jìn)行檢索。默認(rèn)為'c')

SELECT REGEXP_SUBSTR('123,,,ABC,!@#,,,', '[^,]+') FROM DUAL ;

取分割后的第一個(gè)值

結(jié)果:123

SELECT REGEXP_SUBSTR('123,,,ABC,!@#,,,', '[^,]+', 2) FROM DUAL ;

從第二個(gè)字符開(kāi)始匹配,取分割后的第一個(gè)值

結(jié)果:23

SELECT REGEXP_SUBSTR('123,,,ABC,!@#,,,', '[^,]+', 1, 2) FROM DUAL ;

取分割后的第二個(gè)值

結(jié)果:ABC

SELECT REGEXP_SUBSTR('123,,,ABaC,!@#,,,', '[^a]+', 1, 2, 'i') FROM DUAL ;

不區(qū)分大小寫(xiě)分割后的第二個(gè)值

結(jié)果:B

SELECT REGEXP_SUBSTR('123,,,ABaC,!@#,,,', '[^a]+', 1, 2, 'c') FROM DUAL ;

區(qū)分大小寫(xiě)分割后的第二個(gè)值

結(jié)果:C,!@#,,,

SELECT REGEXP_SUBSTR('123,,,ABC,!@#,,,', '[^,]+', 1, LEVEL) 
FROM DUAL 
CONNECT BY REGEXP_SUBSTR('123,,,ABC,!@#,,,', '[^,]+', 1, LEVEL) IS NOT NULL;

取分割后的所有結(jié)果 ( level  oracle關(guān)鍵字,表示查詢深度,用來(lái)實(shí)現(xiàn)層級(jí)查詢)

結(jié)果:

123
ABC
!@#

以上是“Oracle如何通過(guò)正則表達(dá)式分割字符串REGEXP_SUBSTR”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI