REPLACE(参数1,参数2,参数3):
REPLACE(String,str1,str2) 即:将String中所有出现的str1替换为str2。
SUBSTR(str,pos,len): 就是从pos开始的位置,截取len个字符(空白也算字符)。
SUBSTR(参数1,参数2(a),参数3(b)):
只要 |a| ≤ b,取a的个数;当 |a| ≥ b时,才取b的个数,由a决定截取位置
参数1是需要截取的字符串,参数2是截取字符串的开始位置(注:当参数2等于0或1时,都是从第一位开始截取),参数3是要截取的字符串长度
SBUSTR(str,pos):从pos开始的位置,一直截取到最后。
参数1是要截取的字符串,截取从参数2开始到最后所有的字符串。当只有两个参数时;不管是负几,都是从最后一个开始 往回截取.
格式一:instr( string1, string2 ) / instr(源字符串, 目标字符串)
格式二:instr( string1, string2 [, start_position [, nth_appearance ] ] ) / instr(源字符串, 目标字符串, 起始位置, 匹配序号)
解析:string2 的值要在string1中查找,是从start_position给出的数值(即:位置)开始在string1检索,检索第nth_appearance(几)次出现string2。
注:在Oracle/PLSQL中,instr函数返回要截取的字符串在源字符串中的位置。只检索一次,也就是说从字符的开始到字符的结尾就结束。
例:
select instr('helloworld','l',2,3) from dual; --返回结果:9 在"helloworld"的第2(e)号位置开始,查找第三次出现的“l”的位置
select instr('helloworld','l',-2,3) from dual; --返回结果:3 在"helloworld"的倒数第2(l)号位置开始,往回查找第三次出现的“l”的位置