使用 Regexp_like pl sql 搜索字母数字值区分大小写
Case senstive search for alphanumeric values with Regexp_like plsql
我正在尝试在列中查找字母数字值,该值区分大小写。
我试过这种模式,但它不起作用。
`REGEXP_LIKE ('1000 - 2000 test', '^[0-9]{4} - [0-9]{4} test', 'c')`
还是字母数字值不区分大小写?
阅读手册 http://docs.oracle.com/cd/B12037_01/server.101/b10759/conditions018.htm ;)
select * from (
select '1000 - 2000 test' a from dual
union all select '1000 - 2123 TEST' a from dual
) where
REGEXP_LIKE(a, '^[0-9]{4} - [0-9]{4} test', 'c');
返回
1000 - 2000 test
由于 'c'
, 区分大小写,因此上面给出 1 行,而下面使用 'i'
不区分大小写 ,给出 2:
select * from (
select '1000 - 2000 test' a from dual
union all select '1000 - 2123 TEST' a from dual
) where
REGEXP_LIKE(a, '^[0-9]{4} - [0-9]{4} test', 'i');
返回
1000 - 2000 test
1000 - 2123 TEST
我正在尝试在列中查找字母数字值,该值区分大小写。
我试过这种模式,但它不起作用。
`REGEXP_LIKE ('1000 - 2000 test', '^[0-9]{4} - [0-9]{4} test', 'c')`
还是字母数字值不区分大小写?
阅读手册 http://docs.oracle.com/cd/B12037_01/server.101/b10759/conditions018.htm ;)
select * from (
select '1000 - 2000 test' a from dual
union all select '1000 - 2123 TEST' a from dual
) where
REGEXP_LIKE(a, '^[0-9]{4} - [0-9]{4} test', 'c');
返回
1000 - 2000 test
由于 'c'
, 区分大小写,因此上面给出 1 行,而下面使用 'i'
不区分大小写 ,给出 2:
select * from (
select '1000 - 2000 test' a from dual
union all select '1000 - 2123 TEST' a from dual
) where
REGEXP_LIKE(a, '^[0-9]{4} - [0-9]{4} test', 'i');
返回
1000 - 2000 test
1000 - 2123 TEST