sql >> Databáze >  >> RDS >> Oracle

Oracle:Nahrazení nenumerických znaků v řetězci

Můžete použít REGEXP_REPLACE od Oracle 10:

SELECT REGEXP_REPLACE('+34 (947) 123 456 ext. 2013', '[^0-9]+', '')
FROM DUAL

Tento příklad vrátí 349471234562013 .

Mezi alternativní syntaxe patří:

  • Třídy znaků POSIX:

    '[^[:digit:]]+'
    
  • Rozšíření ovlivněná Perlem (od Oracle 11):

    '\D+'
    


  1. NodeJS/Knex Vytváření odpovědi Json

  2. MySQL jako jiný obor

  3. Jak zploštit výsledek PostgreSQL

  4. java.sql.SQLException:I/O Error:Resetování připojení na linuxovém serveru