Comment faire Pour Supprimer la non-alphanumérique, ou des caractères non numériques avec la Ruche REGEXP_EXTRACT() la Fonction

J'ai été à essayer de comprendre comment supprimer une ou plusieurs non-alphanumériques ou des caractères non numériques, ou de ne renvoyer que les caractères numériques à partir d'une chaîne. J'ai essayé:

SELECT
regexp_extract('X789', '[0-9]', 0)
FROM
table_name

Mais il renvoie '7', pas '789'.

J'ai aussi essayé de supprimer les caractères non numériques à l'aide de ne PAS CORRESPONDRE à la syntaxe ^((?!regexp).)*$:

SELECT
REGEXP_REPLACE('X789', '^((?![0-9]).)*$', '')
FROM
jav_test_ii

Peut regexp_extract retour des correspondances multiples? Ce que j'essaye vraiment de le faire est de nettoyer mes données ne contenir que des nombres ou des caractères alphanumériques. Ce qui semble pour aider à éliminer les mauvais caractères, mais ce n'est pas une plage de caractères comme [0-9]. regexp_replace(string, '�',")

EDIT: La requête ci-dessous a été en mesure de retourner '7789", ce qui est exactement ce que je cherchais.

SELECT
regexp_replace("7X789", "[^0-9]+", "")
FROM
table_name

OriginalL'auteur user1152532 | 2014-01-28