REGEXP_REPLACE を使用できます Oracle 10 以降:
SELECT REGEXP_REPLACE('+34 (947) 123 456 ext. 2013', '[^0-9]+', '')
FROM DUAL
この例では、349471234562013
が返されます。 .
代替構文には次のものがあります:
- <リ>
POSIX 文字クラス:
'[^[:digit:]]+'
<リ> Perl の影響を受けた拡張 (Oracle 11 以降):
'\D+'