使用SUBSTR()AND INSTR()查找字符串

时间:2015-06-13 15:05:09

标签: sql plsql oracle11g plsqldeveloper

我有一个问题,就是从字符串中选择一个子字符串。字符串相等。我的例子看起来像这个。

string='test = 1234sg654'

我的想法是以相同的方式选择等于" 1234sg654"之后的字符串:用Instr()找到相等的位置,然后用Substr(),等于减去字符串直到结束字符串。

equal=INSTR(string,'=',1,1);
aux=Substr(string,-1,equal); // -1 I thought that is represent end of line

但结果不是1234sg654 我的错误在哪里?

1 个答案:

答案 0 :(得分:1)

不要将-1用于位置参数 - 子字符串会从字符串末尾开始许多字符。你可以这样做:

aux = substr(string, instr(string, '=') + 1)

第三个​​参数意味着"转到字符串的末尾"。