Implement regexp_match(), a simplified alternative to regexp_matches().

Tom Lane <tgl@sss.pgh.pa.us>

Commit: cf9b0fea5f6d1bcc9b2c66f5c30ecb04684a0919
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2016-08-17T22:33:01Z
Releases: 10.0
Implement regexp_match(), a simplified alternative to regexp_matches().

regexp_match() is like regexp_matches(), but it disallows the 'g' flag
and in consequence does not need to return a set.  Instead, it returns
a simple text array value, or NULL if there's no match.  Previously people
usually got that behavior with a sub-select, but this way is considerably
more efficient.

Documentation adjusted so that regexp_match() is presented first and then
regexp_matches() is introduced as a more complicated version.  This is
a bit historically revisionist but seems pedagogically better.

Still TODO: extend contrib/citext to support this function.

Emre Hasegeli, reviewed by David Johnston

Discussion: <CAE2gYzy42sna2ME_e3y1KLQ-4UBrB-eVF0SWn8QG39sQSeVhEw@mail.gmail.com>

Files

Documentation touched