Oracle SQL regexp_substr编程问题

时间:2014-12-03 20:43:17

标签: sql oracle

任何人都可以帮我解决这个问题吗?我在编程方面有点新手,我正在查询中使用REGEXP_SUBSTR。我有一个大文件,我只需要使用某些部分。

我想将此转换成:Stuart,Martin E(Martin.Stuart@canadanotes.ca):Martin.Stuart@canadanotes.ca

我使用regexp_substr并让它显示所有内容但我在电子邮件地址的末尾有一个烦人的括号我需要摆脱。有人可以帮忙吗?

SELECT regexp_substr ('Stuart, Martin G (Martin.Stuart@canadanotes.ca)', '[^("]+',1,2)
FROM dual;

REGEXP_SUBSTR('STUART,MARTING(
------------------------------
Martin.Stuart@canadanotes.ca)

2 个答案:

答案 0 :(得分:1)

select regexp_substr ('Stuart, Martin G (Martin.Stuart@canadanotes.ca)', '[^)("]+',1,2) from dual;

只需在[^]

中添加结束括号即可

答案 1 :(得分:0)

 select regexp_substr ('Stuart, Martin G (Martin.Stuart@canadanotes.ca)', '[^()]+',1,2) from dual;   

工作正常。为什么在表达中使用文字。