Python Как заменить указанные слова / символы из таблицы в postgres - PullRequest
0 голосов
/ 01 октября 2018

У меня есть эта таблица в postgres, и я хочу заменить некоторые слова / символы.Hier это проблема.Как вы видите, есть некоторые (: :) и дополнительные слова.

Я хочу изменить RIPE :: AS-RETN RIPE :: AS-RETN6 на AS-RETN AS-RETN6 и ...

  ID           AS-SET
+=====+=====================================+
   1  +  RIPE::AS-RETN RIPE::AS-RETN6       +
+=====+=====================================+
   2  +  AS-EASYNET                         +
+=====+=====================================+
   3  +  RIPE                               +
+=====+=====================================+
   4  +  NTTCOM::AS-5713 NTTCOM::AS-5713-ZA +
+=====+=====================================+

Результат должен быть

  ID           AS-SET
+=====+=====================================+
   1  +  AS-RETN AS-RETN6                   +
+=====+=====================================+
   2  +  AS-EASYNET                         +
+=====+=====================================+
   3  +                                     +
+=====+=====================================+
   4  +  AS-5713 AS-5713-ZA                 +
+=====+=====================================+

Таким образом, он удаляет: и лишние пробелы, а также слово RIPE.Может кто-то может помочь с этим!Спасибо

1 Ответ

0 голосов
/ 02 октября 2018

A regexp_replace будет делать то, что вы хотите.

Попробуйте это (изменив имя таблицы / столбца на соответствующее):

SELECT regexp_replace(as_set, '(RIPE::)|(RIPE ?)|(NTTCOM::)', '', 'g')
FROM my_table;

и запустите обновление, если результат выглядит хорошо:

UPDATE my_table
SET as_set = regexp_replace(as_set, '(RIPE::)|(RIPE ?)|(NTTCOM::)', '', 'g')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...