问题描述
我有一列看起来像这样的字符串:
字符串:SECTION1/SECTION2/0000123456789/SECTION3/SECTION4 字符串:第1节/第2节/0000987654321/第3节/第4节 字符串:SECTION1/SECTION2/00005552121X/SECTION3/SECTION4 字符串:SECTION1/SECTION2/00005552222:ID/SECTION3/SECTION4
我正在尝试使用 REGEXP_REPLACE 来替换中间的可变长度、字母/数字/特殊字符字符串,并用通用的东西替换它,使它们看起来像这样:
STRING:SECTION1/SECTION2/id_number_removed/SECTION3/SECTION4
我整个上午都在尝试寻找正确的正则表达式来替换“/SECTION2/”和“/SECTION3/”之间的所有内容,但没有成功。
解决方法
用 evil.com
替换正则表达式模式 'SECTION2/[^/]+/SECTION3'
。 'SECTION2/id_number_removed/SECTION3'
表示 1 个或多个不是斜杠的字符。
[^/]+
给出
select regexp_replace(
'STRING:SECTION1/SECTION2/00005552222:ID/SECTION3/SECTION4','SECTION2/[^/]+/SECTION3','SECTION2/id_number_removed/SECTION3');