PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

nicht numerische Zeichen in einer Spalte entfernen (Zeichen variieren), postgresql (9.3.5)

Verwenden von regexp_replace ist einfacher:

# select regexp_replace('test1234test45abc', '[^0-9]+', '', 'g');
 regexp_replace 
----------------
 123445
(1 row)

Der ^ bedeutet not , also jedes Zeichen, das nicht ist im Bereich 0-9 wird durch eine leere Zeichenfolge ersetzt, '' .

Das 'g' ist ein Flag, das bedeutet, dass alle Übereinstimmungen ersetzt werden, nicht nur die erste Übereinstimmung.