oracle регулярное выражение для извлечения десятичных чисел из строки - PullRequest
0 голосов
/ 01 мая 2020

Я пытаюсь извлечь десятичные числа из случайной строки. Как это сделать с помощью функции regex_replace? При желании я хочу сохранить отрицательный знак для отрицательных целых чисел.

пример:

ввод:

'text abc023.46'
 '-123.12abc'

вывод:

023.46
-123.12

1 Ответ

0 голосов
/ 01 мая 2020

Использование REGEXP_SUBSTR:

SELECT REGEXP_SUBSTR(col, '-?\d+(\.\d+)?')
FROM yourTable;

Этот шаблон также делает десятичный компонент необязательным.

...