The following bug has been logged on the website: Bug reference: 15046 Logged by: Bob Gailer Email address: bgailer@gmail.com PostgreSQL version: 10.1 Operating system: windows 10 Description: I start psql; enter: postgres=# select regexp_replace('a(d)s(e)f', '\(.*?\)', '', 'g'); regexp_replace ---------------- asf (1 row) Works as expected. Then I add |q to the pattern, and the .*? becomes greedy! postgres=# select regexp_replace('a(d)s(e)f', '\(.*?\)|q', '', 'g'); regexp_replace ---------------- af (1 row)
An RE consisting of two or more branches connected by the | operator is always greedy.
|
David J.
pgsql-bugs by date:
Соглашаюсь с условиями обработки персональных данных