REGEXP_REPLACE 會搜尋字串中的固定樣式,並將它取代成其他字串。依照預設,此函數會傳回 source_char,其中每一個出現的一般表示式樣式都會被取代成 replace_string。
VARCHAR2 | CLOB
REGEXP_REPLACE(source_char, pattern
[, replace_string
[, position
[, occurrence
[, match_parameter ]
]
]
]
)
source_char -- 要搜尋的文字表示式。
pattern -- 要搜尋的文字表示式。通常是文字,並且最多可包含 512 個位元組。
replace_string -- 會取代 source_char 中之 pattern 的文字。
position -- 一個非零的整數,指示函數要開始搜尋的字串字元位置。position 為負數時,INSTR 會從字串的結尾往回計算和搜尋。position 的預設值是 1,表示函數會從字串的第一個字元開始搜尋。
occurrence -- 一個整數,指示函數要搜尋出現的第幾個字串。occurrence 的值必須是正數。occurrence 的預設值是 1,表示函數會搜尋出現的第一個 substring。
return_option -- 0 可傳回相符項目的位置 (預設值);1 可傳回相符項目後方字元的位置。
match_parameter -- 可讓您變更函數預設對應行為的文字。您可以指定下列一或多個值:
c:對應時區分大小寫。
i:對應時不區分大小寫。
m:將來源字串視為多個資料行來處理。REGEXP_INSTR 會將 ^ 和 $ 分別解譯成來源字串中任何位置之任一資料行的開始和結束,而不僅僅是解譯成整個來源字串的開始和結束。依照預設,REGEXP_INSTR 會將來源字串視為單一的資料行。
n:換行字元位於句號 (萬用字元) 所對應的字元之中。依照預設,換行字元不在其中。
x:略過空格字元。
REGEXP_REPLACE('500 Oracle Parkway, Redwood Shores, CA', '( ){2,}', ' ') 會去除額外的空格並傳回字串 500 Oracle Parkway, Redwood Shores, CA。
版權所有 © 2003,2007,Oracle。保留一切權利。