如何在PL / SQL中访问字符串的索引?

时间:2014-12-07 19:04:32

标签: sql string oracle plsql

我有一个程序说

DECLARE
str VARCHAR2(20);
BEGIN
str:='Test';
DBMS_OUTPUT.PUT_LINE(// Here I want to print a character of any index from string//);
END;
/

怎么做?

3 个答案:

答案 0 :(得分:4)

您使用SUBSTR function。例如:

DECLARE
  str VARCHAR2(20);
BEGIN
  str:='Test';

  FOR i IN 1..LENGTH(str) LOOP
    DBMS_OUTPUT.PUT_LINE('Character at index ' || i || ' is ' || SUBSTR(str, i, 1));
  END LOOP;
END;

分享并享受。

答案 1 :(得分:1)

如果您希望在字符串中查找特定字符及其索引,请查看Oracle函数INSTR()。

INSTR(string,substring [,start_position [,nth_appearance]])

HTH

答案 2 :(得分:0)

嘿,别忘了REGEXP_SUBSTR

DECLARE
  str VARCHAR2(20);
BEGIN
  str:='Test';

  FOR i IN 1..LENGTH(str) LOOP
    DBMS_OUTPUT.PUT_LINE('Character at index ' || i || ' is ' || REGEXP_SUBSTR(str, '.', i));
  END LOOP;
END;

点匹配任何字符。