PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

PostgreSQL regexp_replace със съответстващ израз

Добре, намерих отговора. Очевидно трябва да избягам двойно от обратната наклонена черта в замяната. Освен това трябва да E -префикс и двойни екраниращи обратни наклонени черти в шаблона за търсене на по-стари версии на postgres (8.3 в моя случай). Крайният код изглежда така:

regexp_replace('abc [def]', E'([\\[\\]\\(\\)\\\\\?\\|_%])', E'\\\\\\1', 'g')

Да, изглежда ужасно, но работи :)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Създайте вложен json от sql заявка postgres 9.4

  2. Прословутото java.sql.SQLException:Не е намерен подходящ драйвер

  3. PostgreSQL тригери и основи на съхранените функции

  4. Таблица на заявката със сбор от ВСИЧКИ предишни позиции, с изключение на текущата позиция

  5. Генерирайте серии от месеци за всеки ред в Oracle