在 PLSQL 的另一个字符串中查找一个字符串
Find a string in an other string in PLSQL
例如我有两个这样的字符串:
string1:约翰·史密斯
string2:工作流程 john smith123johnsmith
我想做一面旗帜,像这样:
case when upper(string2) like '%string1%' then 1 else 0 end
但是它不起作用。
提前致谢!
使用 regexp_substr
执行以下操作:
SELECT CASE
WHEN ( regexp_substr(<your_string2> , <your_string1>,1,1,'i')) = lower(<your_string1>)
then 1
ELSE
0
end Col
from dual
演示:
SELECT CASE
WHEN ( regexp_substr('workflow john smith123johnsmith' , 'JOHN SMITH',1,1,'i')) = lower('JOHN SMITH')
then 1
ELSE
0
end Col
from dual
例如我有两个这样的字符串:
string1:约翰·史密斯
string2:工作流程 john smith123johnsmith
我想做一面旗帜,像这样:
case when upper(string2) like '%string1%' then 1 else 0 end
但是它不起作用。 提前致谢!
使用 regexp_substr
执行以下操作:
SELECT CASE
WHEN ( regexp_substr(<your_string2> , <your_string1>,1,1,'i')) = lower(<your_string1>)
then 1
ELSE
0
end Col
from dual
演示:
SELECT CASE
WHEN ( regexp_substr('workflow john smith123johnsmith' , 'JOHN SMITH',1,1,'i')) = lower('JOHN SMITH')
then 1
ELSE
0
end Col
from dual