我是新来的,求解一个字符串处理的问题
写一个函数f_include(p_a varchar2,p_b varchar2) return number;
传入参数 p_a, p_b 均是由逗号分隔的字符串,要求判断p_b中逗号分隔的各个字符串是否均在p_a用
逗号分隔的字符串中,如果都是则返回1否则返回0
如:
select f_include('a,bc,81','b,c'),f_include('a,bc,81','bc,a') from dual;
F_INCLUDE('A,BC,81','B,C') F_INCLUDE('A,BC,81','BC,A')
-------------------------- ---------------------------
0 1
其中第一个返回 0, 第二个返回 1
我的代码如下:
create or replace function f_include(p_a varchar2,p_b varchar2) return number
is
result number:=1;
p_a_r varchar2(100) :='';
p_b_r varchar2(100) :='';
a varchar2(100):=p_a;
b varchar2(100):=p_b;
begin
if p_a_r!=p_b_r then
for i in 1..length(a) loop
p_a_r:=p_a_r||substr(a,i,instr(a,',')-1);
a:=substr(a,instr(a,',')+1);
for j in 1..length(b) loop
p_b_r:=p_b_r||substr(b,j,instr(b,',')-1);
b:=substr(b,instr(b,',')+1);
end loop;
result :=0;
end loop;
end if;
return result;
end;
错在哪里呢?请指教,谢谢!
传入参数 p_a, p_b 均是由逗号分隔的字符串,要求判断p_b中逗号分隔的各个字符串是否均在p_a用
逗号分隔的字符串中,如果都是则返回1否则返回0
如:
select f_include('a,bc,81','b,c'),f_include('a,bc,81','bc,a') from dual;
F_INCLUDE('A,BC,81','B,C') F_INCLUDE('A,BC,81','BC,A')
-------------------------- ---------------------------
0 1
其中第一个返回 0, 第二个返回 1
我的代码如下:
create or replace function f_include(p_a varchar2,p_b varchar2) return number
is
result number:=1;
p_a_r varchar2(100) :='';
p_b_r varchar2(100) :='';
a varchar2(100):=p_a;
b varchar2(100):=p_b;
begin
if p_a_r!=p_b_r then
for i in 1..length(a) loop
p_a_r:=p_a_r||substr(a,i,instr(a,',')-1);
a:=substr(a,instr(a,',')+1);
for j in 1..length(b) loop
p_b_r:=p_b_r||substr(b,j,instr(b,',')-1);
b:=substr(b,instr(b,',')+1);
end loop;
result :=0;
end loop;
end if;
return result;
end;
错在哪里呢?请指教,谢谢!
...全文
相关推荐
brute-force-anagram-solver:一个低效的 anagram 求解器,蛮力猜测 - 用 python 编写
**Python编程:构建一个低效的Anagram求解器**Anagram是通过对字母重新排序来形成新单词的原单词。在编程中,我们有时需要找到一组字符或字符串的所有可能的anagram组合。
FFT处理字符串匹配问题
现在我们拥有一个文本串B一个模式串A,询问A在B中出现的次数 很显然这是一个KMP的裸题,但是现在不考虑使用KMP,使用FFT来找A在B中出现的次数 首先定义函数 P(x)=∑i=0m−1(A(i)−B(x−m+i+1))P(x)=\sum_{i=0}^{m-1}(A(i)-B(x-m+i+1))P(x)=i=0∑m−1(A(i)−B(x−m+i+1)) 这个函数代表,字符串A在B中匹配以x为最...
计算机辅助建筑设计--方程求解.pptx
这旨在训练开发者创建一个能够动态适应新函数的程序。接着,课题2转向了高次方程的求解。在科学和工程问题中,高次方程的解通常与方程的次数有关,但并非所有解都有实际意义。
Java回溯法求分割回文字符串源码
在编程领域,回溯法是一种常用的算法,常用于解决组合优化问题,如八皇后问题、图的着色问题等。本话题将详细讲解如何使用Java实现回溯法来求解分割回文字符串的问题。首先,我们需要理解什么是回溯法。
寻找字符串中最长的回文子串的长度
动态规划是一种将大问题分解成小问题并逐步求解的方法。在这个问题中,我们可以创建一个二维数组dp,其中dp[i][j]表示字符串从索引i到j的子串是否是回文。


