Oracle non supporta i gruppi non di acquisizione (?:)
. Dovrai invece utilizzare un gruppo di acquisizione.
Inoltre non gli piace il meta-carattere degli spazi bianchi in stile perl \s
corrispondenza all'interno di una classe di caratteri []
(corrisponderà ai caratteri \
e s
invece di spazi bianchi). Dovrai usare l'espressione POSIX [:space:]
invece.
Impostazione dello schema Oracle 11g R2 :
Query 1 :
select *
from (
select column_value str
from table(sys.dbms_debug_vc2coll('123','1234','12345','12 135', '1', '12 3'))
)
where regexp_like(str, '\d([()[:space:]#-]*\d){3,}')
| STR |
|--------|
| 1234 |
| 12345 |
| 12 135 |