【发布时间】:2016-08-10 16:46:31
【问题描述】:
该特定列的模式应如下所示
WAP
WAPA
WAPB
or
WAP
AWAP
XWAP
或
ABC
XABCY
ZABCO
等等……
WAP 不是恒定不变的,也可能会发生变化。我试过像 '%A_Z%';但不能正常工作
【问题讨论】:
标签: regex oracle oracle10g pattern-matching
该特定列的模式应如下所示
WAP
WAPA
WAPB
or
WAP
AWAP
XWAP
或
ABC
XABCY
ZABCO
等等……
WAP 不是恒定不变的,也可能会发生变化。我试过像 '%A_Z%';但不能正常工作
【问题讨论】:
标签: regex oracle oracle10g pattern-matching
如果您正在寻找以下模式:
然后你可以这样做:
Oracle 设置:
CREATE TABLE tests( value ) AS
SELECT 'WAP WAPA WAPB' FROM DUAL UNION ALL
SELECT 'WAP AWAP XWAP' FROM DUAL UNION ALL
SELECT 'ABC XABCY ZABCO' FROM DUAL UNION ALL
SELECT 'ABCDE,XABCDE,XXABCDE,ABCDEXXY,XABCDEYY' FROM DUAL;
查询:
SELECT *
FROM Tests
WHERE REGEXP_LIKE( value, '^(\w+)(\W\w*\1\w*){2,}$' );
输出:
VALUE
--------------------------------------
WAP WAPA WAPB
WAP AWAP XWAP
ABC XABCY ZABCO
ABCDE,XABCDE,XXABCDE,ABCDEXXY,XABCDEYY
【讨论】: