1.regexp_similar函數
功能:查看字符串是否包含某子串,包含則返回1,不包則含返回0。
select regexp_similar('iuh()87%^&6888','.*[0-9]{4}') --是以4個0-9的數字結尾的字符串,返回1
,regexp_similar('iuh()87%^&6888dkfj','.*[0-9]{4}') --不是以4個0-9的數字結尾的字符串,返回0
2.regexp_instr函數
功能:查看字符串包含某子串的位置,包含則返回首個匹配位置,不包含則返回0
select regexp_instr('我的998','app') --不包含app,返回0 ,regexp_instr('我的998app','app') --包含一個app,返回子串位置8 ,regexp_instr('我的apple998app','app') --包含兩個app,返回第一個子串位置5
3.regexp_substr函數
功能:返回第一個匹配的子串
select regexp_substr('我的apple998','[a-z]{5}') --返回第一個連續5個小寫字母apple ,regexp_substr('我的aaaae998我的apple008','[a-z]{5}') --返回第一個連續5個小寫字母aaaae
4.regexp_replace函數
功能:替換所有匹配子串
select regexp_replace('我的apple998','[a-z]{5}','pp') --替換apple為pp,結果為"我的pp998" ,regexp_replace('我的aaaae998我的apple008','[a-z]{5}','pp') --替換aaaae和apple為pp,結果為"我的pp998我的pp008"
參考文檔:Teradata正則表達式