这可能是一个非常简单的问题,但我已经没有想法了。 我想从字符串中删除前5个字符。
示例字符串将如下所示: 1Y40K100R
我想只显示'%K'之后的数字。在这种情况下应该给我100R的结果。 请注意' K'可以有不同的数字。它可以是4位数字或2位数字。
答案 0 :(得分:3)
只需使用substr()
:
select substr(col, 6)
这将返回从第六个开始的所有字符。
有多种方法可以在k
之后返回所有字符。如果您知道该字符串包含k
,请使用instr()
:
select substr(col, instr(col, 'K') + 1)
答案 1 :(得分:0)
您可以使用regexp_substr
select regexp_substr('1Y40K100R', '(K)(.*)', 1, 1, 'i', 2) from dual
没有正则表达式的方法:
select substr('1Y40K100R', instr('1Y40K100R', 'K') +1) from dual
这可能看起来不那么优雅,但它通常比正则表达式更好。