根据给定字符串中的字符串键查找字符串值

哈桑·古尔扎(Hassan Gulzar)

我有一个像这样的字符串:

Directory=Voice Active Directory A,ID=VT-AD1,Location=Canada,UserName=admin,Password=passw0rd,Selector=AD1

我正在编写一个函数,该函数将接收此值作为参数,并接收另一个参数作为 UserName

我需要从给定的字符串中找到键UserName的值 admin

我正在搜索oracle中是否有RegEx来帮助您。

到目前为止,这是我所做的:

CREATE OR REPLACE FUNCTION GET_CSV_FIELD(Parameter_RowData IN CLOB, Parameter_Field_Name IN VARCHAR2 )
  RETURN VARCHAR2
AS
  Found_Index INTEGER;
  End_Index INTEGER;
  Pair_Index INTEGER;

  Return_Result VARCHAR2(4000); 

BEGIN

   Found_Index := INSTR(Parameter_RowData, Parameter_Field_Name);

   IF Found_Index > 0 THEN
    End_Index := INSTR(Parameter_RowData, ',', Found_Index);
    Pair_Index := INSTR(Parameter_RowData, '=', Found_Index);

    IF End_Index = 0 THEN
      Return_Result := '';
      RETURN Return_Result;
    END IF;

    IF Pair_Index = 0 THEN
      Return_Result := '';
      RETURN Return_Result;
    END IF;   

    Return_Result := SUBSTR(Parameter_RowData, Pair_Index + 1, End_Index - Pair_Index - 1);
   ELSE
    Return_Result := '';    
   END IF;

RETURN Return_Result;
END;

有更好的方法吗?谢谢。

戈登·利诺夫

您可以使用正则表达式执行此操作:

select substr(regexp_substr(str, 'UserName=[^,]+'), 10)

一般方法是

select substr(regexp_substr(str, v_param || '=[^,]+'), length(v_param) + 2)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据字数查找字符串

来自分类Dev

Java:在字符串中查找字符串

来自分类Dev

查找字符串在字符串中的位置

来自分类Dev

Python:在字符串中查找字符串

来自分类Dev

在字符串中查找字符串

来自分类Dev

在字符串中查找字符串的实例

来自分类Dev

在字符串中查找字符串的出现

来自分类Dev

javascript在字符串中查找字符串

来自分类Dev

按值查找字符串

来自分类Dev

Android:通过字符串值查找字符串资源键

来自分类Dev

在多维php数组中查找字符串(键)

来自分类Dev

在PHP中查找字符串

来自分类Dev

在文件中查找字符串

来自分类Dev

查找字符串中的日期

来自分类Dev

查找字符串中的行数

来自分类Dev

在文件中查找字符串

来自分类Dev

查找字符串中的数字

来自分类Dev

查找字符串中的网址

来自分类Dev

查找字符串中的字母

来自分类Dev

使用输入字符串查找字符串中的子字符串

来自分类Dev

Python使用子字符串在字符串中查找字符串

来自分类Dev

在Ruby中查找字符串中的值(整数)?

来自分类Dev

字符串模式查找字符

来自分类Dev

查找字符串中数组值的首次出现

来自分类Dev

在以逗号分隔的列表中查找字符串值

来自分类Dev

在 x 毫秒内查找字符串中的值

来自分类Dev

vba 查找字符串以外的字符串

来自分类Dev

从允许的字符或字符串中查找字符或字符串的存在

来自分类Dev

Excel公式-在字符串中查找字符,删除字符串末尾的字符