Oracle中的regexp_substr函數(shù)用于從一個(gè)字符串中提取滿足正則表達(dá)式模式的子字符串。它的語法如下:
regexp_substr(source_string, pattern [, position [, occurrence [, match_parameter]]])
參數(shù)說明:
示例:
從字符串中提取連續(xù)的數(shù)字: SELECT regexp_substr(‘a(chǎn)bc123def456’, ‘\d+’) FROM dual; 結(jié)果:123
從字符串中提取匹配的第二個(gè)子字符串: SELECT regexp_substr(‘a(chǎn)bc123def456’, ‘\d+’, 1, 2) FROM dual; 結(jié)果:456
從字符串中提取以字母開頭的連續(xù)字符: SELECT regexp_substr(‘a(chǎn)bc123def456’, ‘[a-zA-Z]+’) FROM dual; 結(jié)果:abc
更多用法和正則表達(dá)式模式可以參考Oracle官方文檔。