使用 SUBSTR() 和 INSTR() 查找字符串结尾

Using SUBSTR() AND INSTR() find end of string

我有一个问题,select 一个字符串的子字符串。相等之后的字符串。我的例子看起来像这个。

string='test = 1234sg654'

我的想法是select等于“1234sg654”之后的字符串,这样:用Instr()找到相等的位置,然后用Substr(),减去等于后的字符串直到结束字符串。

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

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

不要对 position 参数使用 -1 -- 子字符串从字符串末尾开始那么多字符。你可以这样做:

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

没有第三个参数表示"go to the end of the string".