怎么让instr函数,不区分大小写?默认是区分大小写的

时间:2021-12-17 00:44:49
instr(原字符串,目标字符串,搜索位置,匹配次数)


select Instr('pPfdppf','PP',1,1) from dual


这个结果pP匹配PP,怎么得到1

6 个解决方案

#1


select Instr(lower('pPfdppf'),lower('PP'),1,1) from dual;

#2


怎么让instr函数,不区分大小写?默认是区分大小写的
我这边得到的是0,你是不是oracle的字符集或者什么选项设置有问题造成不区分大小写

#3


引用 2 楼 Rexmax 的回复:
怎么让instr函数,不区分大小写?默认是区分大小写的
我这边得到的是0,你是不是oracle的字符集或者什么选项设置有问题造成不区分大小写


0说明是没找到,我想得到1(匹配到的返回值)。

别把问题想复杂了,呵呵

#4


直接使用 lower() Upper()函数,转换大小写就行了

#5


把instr改成regexp_instr

#6


匹配的之前需要将大小写统一了,这样才能找到。

#1


select Instr(lower('pPfdppf'),lower('PP'),1,1) from dual;

#2


怎么让instr函数,不区分大小写?默认是区分大小写的
我这边得到的是0,你是不是oracle的字符集或者什么选项设置有问题造成不区分大小写

#3


引用 2 楼 Rexmax 的回复:
怎么让instr函数,不区分大小写?默认是区分大小写的
我这边得到的是0,你是不是oracle的字符集或者什么选项设置有问题造成不区分大小写


0说明是没找到,我想得到1(匹配到的返回值)。

别把问题想复杂了,呵呵

#4


直接使用 lower() Upper()函数,转换大小写就行了

#5


把instr改成regexp_instr

#6


匹配的之前需要将大小写统一了,这样才能找到。