【发布时间】:2020-12-30 10:05:35
【问题描述】:
我正在尝试提取单词“Hændelse”之后的以下字符串中的所有内容。
字符串:
Recordtype001[ efternavn = Nymark.] Adr2: 7020 Trondheim Hændelse A06: Udrejse er modtaget fra CPR-registeret.
我曾尝试使用 REGEXP_SUBSTR - 但它只返回字符串 't."' 的结尾。
我希望它返回
A06: Udrejse er modtaget fra CPR-registeret.
这是我尝试过的:
WITH data AS
(
SELECT '"Recordtype001[ efternavn = Nymark.] Adr2: 7020 Trondheim Hændelse A06: Udrejse er modtaget fra CPR-registeret."' string
FROM dual
)
SELECT string,
REGEXP_SUBSTR(string, '[^Hændelse]+$') new_string
FROM data;
【问题讨论】:
-
括号使它成为一个否定字符类。尝试类似
Hændelse.* -
这个怎么样: WITH data AS ( SELECT '"Recordtype001[ efternavn = Nymark.] Adr2: 7020 Trondheim Hændelse A06: Udrejse er modtaget fra CPR-registeret."' string, 'Hændelse' 查找 FROM dual ) SELECT string, SUBSTR(REGEXP_SUBSTR(string, lookfor||'.+'),LENGTH(lookfor)+2) new_string FROM data;