oracle---字符串相关


1. 字符串---正则

select regexp_substr('1,2,3','[^,]+',1,1) result from dual;

    param1:源串

    param2:正则表达式

    param3:匹配开始位置,从1开始

    param4:匹配模组/元组的第几个

select REGEXP_COUNT('1,2,3,5','[^,]+',1) result from dual;

    返回根据正则匹配到的模组/元组的个数   

    param1:源串

    param2:正则

    param3:开始位置

2. 子串
2.1 截取子串

substr(string,start,[length])

    string:源串

    start:开始位置,默认从1开始;   设为负值,则从源串末尾开始

    length:要截取的字符串长度

2.2 查找

instr(string,subStr,[start],[show_time])

     start:默认为1;设为负值则从右到左检索

     show_time:子串第几次出现