CftClub.ru
Клуб специалистов ЦФТ-Банк

Помощь с REGEXP_REPLACE в plp/plus

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих
Предыдущая тема :: Следующая тема  
Автор Сообщение
Bionorick
Участник


Вступление в Клуб: 12.01.2023
СообщениеСр Авг 09, 2023 09:11   Помощь с REGEXP_REPLACE в plp/plus Ответить с цитатой
Полезность: Нет оценки
Доброго времени суток!
Столкнулся с проблемой обращения по индексу((.*)) к тегу который идёт следом (то есть к первому тегу обратиться проблем нет), например тег C18_TRADE и обращаюсь через "слэш"1, "слэш"2 и т.д.

Подскажите, как обратиться ко второму(например C19_ACCOUNTAMT), то есть через 10, 11 я не могу, регулярка просто подставляем это как значения в виде (10 и т.д.), а необходимо чтоб он подставлял либо дату, число, строку и т.д...

Надеюсь понятно описал проблему... Shocked

P.S. Почему-то вставка кодом удалила "слеш" в тегах C18_TRADE и C19_ACCOUNTAMT(вместо "слэш"1, "слэш"2, и т.д. пишет 1, 2 и т.д.)

Фууух, вроде всё... Laughing


Код:
 TEMP_1 := 'C18_TRADE   (.*)   (.*)   (.*)   7   (.*)   (.*)   (.*)   (.*)      (.*)   (.*)[^.]?C19_ACCOUNTAMT   (.*)   (.*)[^.]?C21_PAYMTCONDITION.*';
   SELECT PRF(REGEXP_REPLACE(PRF.[FT],   TEMP_1, 
   'C18_TRADE   1   2   3   78   4   5   6   7      8   9   
C19_ACCOUNTAMT   10   11                   
C21_PAYMTCONDITION   53,01   18.09.2023   0,97   31.08.2023   99            31.10.2023', 1,0,'i'),PRF%ID
   )
   IN ::[PHX_REP_FT] ALL
   WHERE PRF.[REP_MSG] = P_REP_MSG
   INTO TEMP, PRF_TEMP;
   
   PRF_TEMP.[FT] := TEMP;
   COMMIT;
-Eugene-
Участник


Вступление в Клуб: 21.04.2008
СообщениеСр Авг 09, 2023 15:20   Re: Помощь с REGEXP_REPLACE в plp/plus Ответить с цитатой
Полезность: Нет оценки
Причина указана в документации:
https://docs.oracle.com/en/database/oracle/oracle-database/21/sqlrf/REGEXP_REPLACE.html#GUID-EA80A33C-441A-4692-A959-273B5A224490

The replace_string can contain up to 500 backreferences to subexpressions in the form n, where n is a number from 1 to 9.


В любом случае, не очень понял какую собственно задачу вы пытались решить таким подходом.
Bionorick
Участник


Вступление в Клуб: 12.01.2023
СообщениеЧт Авг 10, 2023 05:59    Ответить с цитатой
Полезность: Нет оценки
Спасибо. нашёл способ.
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru