и .+?
нежадный алгоритм работает как жадный.
Проверил онлайн на 2х сайтах - выражение составил верное
судя по примеру — это таки жадное выражение
Это вы решили маскировать данные в JSON через regexp'ы ? ;)
вот полное выражение
А это читали? Приведите пример куска JSON где есть ключ, значение которого надо скрыть (чувствительные данные замажьте), попробую помочь вам с regexp'ами если вы непременно их желаете.
а где тут JSON
Не понял вопроса. Вы о том, что там речь о JSONB идет? Так всё это и для JSON применимо, за очень небольшим исключением.
Просто для информации: PostgreSQL использует собственный движок "регулярок", его поведение резко отличается от "привычных" (PCRE и т.п.) в нетривиальных случаях, поэтому: . Выражение Вы составили неверное (в PostgreSQL оно жадное, строго по документации). . Поэтому все "онлайн сайты" — мимо. . Какие на самом деле синтаксис и семантика "регулярок" в PostgreSQL — см. именно его документацию.
я нашел уже как надо. Если жадное первое выражение до оно автоматом делает всех жадными на этом уровне. Я переписал и все получилось. Но это конечно не однозначное поведение
Да поведение-то совершенно однозначное и логичное, как раз... но есть один нюанс: "The main problem with pg's regex engine is how it handles non-greedy constructs — it has a rule for how they should work which is simple and consistent and which always does nothing like what you actually want." © RhodiumToad
Обсуждают сегодня