2016-03-22 3 views
-1

Я пытаюсь выбрать только цифры, за которыми следует алфавитно-цифрового символSQL H2 Database выберите цифру + буквенно-цифровой символ из строки

5h 1 
5h 5 8h 8 12h 10 
12h 10 48h 20 
5h 1 8h 1 12h 1 24h 1 48h 1 72h 1 
5h 1 8h 1 12h 1 24h 1 48h 1 72h 1 

Например во второй строке 5h 5 8h 8 12h 10 мне нужно удалить номера 5, 8, 10 т.е. которые не следует персонажем. Результат должен быть 5h 8h 12h.

я уже удалил конкретные символы с:

REGEXP_REPLACE (resource, '[^\w\[email protected]]', ' ') 
+0

Вы хотите извлечь или заменить? –

+0

не имеет значения, выдержка 5ч, 8ч, 12ч или удалить 5,8,10 – simplesystems

+0

Я имею в виду, что вы хотите заменить «5h, 8h, 12h» пустым или следует оставить «h»? –

ответ

0

Попробуйте это регулярное выражение

REGEXP_REPLACE (resource, '\b[0-9]+\b', ' ')

Использование \\b если \b не работает. Не уверен, что ему понадобится двойной побег.

Regex101 Demo

+0

Я думаю, что вы меня неправильно поняли. Stirng выглядит так: «5h 5 8h 8 12h 10», в результате у меня должно быть «5h 8h 12h» – simplesystems

+0

@simplesystems: Пожалуйста, укажите, что отсутствует в моем решении? –

+0

ваше решение удаляет число bevore «h», но мне нужно число + h – simplesystems