Oracle не поддържа неприхващащи групи (?:)
. Вместо това ще трябва да използвате група за заснемане.
Също така не харесва мета-символа за празно пространство в стил perl \s
съвпадение вътре в символен клас []
(ще съответства на знаците \
и s
вместо интервал). Ще трябва да използвате POSIX израза [:space:]
вместо това.
Настройка на схема на Oracle 11g R2 :
Заявка 1 :
select *from ( select column_value str from table(sys.dbms_debug_vc2coll('123','1234','12345','12 135', '1', '12 3')))където regexp_like (str, '\d([()[:space:]#-]*\d){3,}')
<предварителен код>| STR ||--------|| 1234 || 12345 || 12 135 |