Я пытаюсь сделать следующую операцию. У меня есть много строк данных, которые необходимо отредактировать, чтобы удалить часть строки. Эта строка содержит шаблон B0ExxB +, где 'x' может быть любым символом или числом.
- Пример ввода (строка):
'1SX8+B0DSUB+B0E0LB+B0FMAB+B0G0KB'
- Желаемый вывод:
'1SX8+B0DSUB+B0FMAB+B0G0KB'
Я использую операцию REGEXP_REPLACE . есть две стратегии для выполнения sh операции:
Известный шаблон B0E применяет больше операторов регулярных выражений, чтобы выбрать также 4 следующих символа после шаблона, а затем заменить их ничем.
update rx3qtxin xn set cin.cin_value = REGEXP_REPLACE (cin.cin_value, '\SB0E', '') where cin.id = 500228;
Удаляет шаблон, ОК. Я пробовал с добавлением как много? после шаблона, но он удаляет любую другую часть строки.
Известный левый шаблон (
B0E ) и правый шаблон (
B + ) удаляют, когда оба шаблона соответствуют друг другу и содержимое между ними.
- Не знаю, как применить эту идею в регулярных выражениях. *