在Oracle中
能夠使用instr函數對某個字符串進行判斷,判斷其是否含有指定的字符。
在一個字符串中查找指定的字符,返回被查找到的指定的字符的位置。
語法:
instr(sourceString,destString,start,appearPosition)
instr('源字符串' , '目標字符串' ,'開始位置','第幾回出現')
其中sourceString表明源字符串;
destString表明要從源字符串中查找的子串;
start表明查找的開始位置,這個參數可選的,默認爲1;
appearPosition表明想從源字符中查找出第幾回出現的destString,這個參數也是可選的, 默認爲1
若是start的值爲負數,則表明從右往左進行查找,可是位置數據仍然從左向右計算。
返回值爲:查找到的字符串的位置。
對於instr函數,咱們常常這樣使用:從一個字符串中查找指定子串的位置。例如:
SQL> select instr('abcdefgh','de') position from dual;
POSITION
----------
4
從1開始算 d排第四因此返回4
SQL>select instr('abcdefghbc','bc',3) position from dual;
POSITION
----------
9
從第3個字符開始算起 第3個字符是c,因此從3開始之後的字符串找查找bc,返回9
---------------------------
從第1個字符開始,查找第2次出現子串的位置
SQL> select instr('qinyinglianqin','qin', 1, 2) position from dual;
POSITION
----------
12
---------------------------------------------------------------------- app