Thread
-
BUG #19104: Does regexp_substr function support non-greedy matching?
PG Bug reporting form <noreply@postgresql.org> — 2025-11-05T12:41:30Z
The following bug has been logged on the website: Bug reference: 19104 Logged by: lx zou Email address: zoulx1982@163.com PostgreSQL version: 18.0 Operating system: Linux Description: When i use regexp_substr to process some text file, i found regexp_substr does not support non-greedy match. But fix the case again, i found maybe it support non-greedy, i don't hear why the two cases get different results? or is it a regexp_substr bug ? following is the test case: ostgres=# SELECT regexp_substr('d.cook', '[a-z]+\.[a-z]{2,}?'); regexp_substr --------------- d.cook (1 row) postgres=# SELECT regexp_substr('d.cook', '[a-z]\.[a-z]{2,}?'); regexp_substr --------------- d.co (1 row) postgres=# select version(); version -------------------------------------------------------------------------------- PostgreSQL 19devel on x86_64-pc-linux-gnu, compiled by gcc (GCC) 9.1.0, 64-bit (1 row) postgres=# Thanks for your reading. Regards.