pgsql: Fix regexp_matches() handling of zero-length matches.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Fix regexp_matches() handling of zero-length matches.
Дата
Msg-id E1V4YNj-0001Zu-BZ@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix regexp_matches() handling of zero-length matches.

We'd find the same match twice if it was of zero length and not immediately
adjacent to the previous match.  replace_text_regexp() got similar cases
right, so adjust this search logic to match that.  Note that even though
the regexp_split_to_xxx() functions share this code, they did not display
equivalent misbehavior, because the second match would be considered
degenerate and ignored.

Jeevan Chalke, with some cosmetic changes by me.

Branch
------
REL9_2_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/8505ebf31eb50c20afeaca0e0dfa2fbb1cec001f

Modified Files
--------------
src/backend/utils/adt/regexp.c        |   13 ++++----
src/backend/utils/adt/varlena.c       |    5 ++-
src/test/regress/expected/strings.out |   58 +++++++++++++++++++++++++++++++++
src/test/regress/sql/strings.sql      |    7 ++++
4 files changed, 75 insertions(+), 8 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Fix regexp_matches() handling of zero-length matches.
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Fix regexp_matches() handling of zero-length matches.