Как заменить разделенные запятыми разные значения определенным значением

У меня есть строка со значениями - "a", "b", "c", "d", "e". Мне нужно преобразовать каждое из значений в текст null - null,null,null,null,null. Если 10 значений в кавычках и разделены запятой, то появится 10 null. Я попытался использовать REGEXP_REPLACE, но не смог получить результат.

declare
a varchar2(32767) := q'#'a','b','c'#';
c varchar2(32767);
begin
c := replace(REGEXP_REPLACE (a, <don't know what pattern should be here>, 'null'),'''');
dbms_output.put_line(c);
end;
/

REGEX_REPLACE не работает, потому что вы не указали регулярное выражение для использования. Я пробовал REGEX_REPLACE означает, что вы должны иметь возможность включить то, что вы действительно пробовали.

Ken White 13.06.2019 01:42

спасибо за ответ, не мог понять, какой шаблон я должен написать там, и это был вопрос, который я задал.

Diganta Kumar Gogoi 13.06.2019 02:02

Непонятно: почему в вашей попытке вы завернули результат REGEXP_REPLACE в дополнительный вызов replace. Что то, что для?

mathguy 13.06.2019 02:10
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
3
57
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Есть много способов сделать это. Например, вы можете использовать регулярное выражение '[^,]+', которое означает любое количество (один или несколько) последовательных символов без запятой. Затем каждое вхождение этого шаблона будет заменено строкой замены (при этом запятые останутся на месте).

declare
a varchar2(32767) := q'#'a','b','c'#';
c varchar2(32767);
begin
c := REGEXP_REPLACE (a, '[^,]+', 'null');    -- notice the regular expression
dbms_output.put_line(c);
end;
/


null,null,null


PL/SQL procedure successfully completed.

Спасибо, mathGuy, это то, что мне нужно.

Diganta Kumar Gogoi 13.06.2019 02:37

Другие вопросы по теме