需要新的帮助" REGEXP_REPLACE"。
当我这样做时
SELECT REGEXP_REPLACE('7ELEVEN USA','[(\D^USA|^CANADA|^Canada)]','') "NAME" from dual
我得到7ELEVE,你可以看到最后一个角色N缺失。
我想替换下面的第一个数字&展示7-ELEVEN STORE。
20991 7-ELEVEN STORE
非常感谢任何帮助。
提前感谢
答案 0 :(得分:0)
我想替换下面的第一个数字&展示7-ELEVEN STORE。
20991 7-ELEVEN STORE
嗯,你甚至不需要正则表达式 - 好的,旧的SUBSTR
+ INSTR
完成工作就好了(那是RES2)。如果你想要regexp,那么这个模式:^\d+
就可以了 - 它说:
^
锚定到字符串的开头\d+
取所有数字(直到第一个非数字字符,即空格)一个例子:
SQL> with test (col) as
2 (select '20991 7-ELEVEN STORE' from dual)
3 select
4 regexp_replace(col, '^\d+') res1,
5 substr(col, instr(col, ' ') + 1) res2
6 from test;
RES1 RES2
--------------- --------------
7-ELEVEN STORE 7-ELEVEN STORE
SQL>
<强> [编辑] 强>
截至您发布的第一个查询(我不明白是问题):如果您想从该字符串中选择第一个“单词”,我就不会使用{{ 1}}但是(REGEXP_REPLACE
)REGEXP_
:
SUBSTR