From:
Jeremy Drake <pgsql(at)jdrake(dot)com>
To:
David Fetter <david(at)fetter(dot)org>
Cc:
Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>,
PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject:
Re: writing new regexp functions
Date:
2007-02-02 08:54:30
Message-ID:
Pine.BSO.4.64.0702020048510.28908@resin.csoft.net (view raw or flat )
Thread:
2007-02-01 21:20:18 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-02 00:41:39 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-02-02 01:11:30 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-02 03:29:35 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-02 05:11:42 from David Fetter <david(at)fetter(dot)org>
2007-02-02 06:16:54 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-02 06:55:18 from David Fetter <david(at)fetter(dot)org>
2007-02-02 08:15:15 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-02 08:54:30 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-02 17:12:27 from David Fetter <david(at)fetter(dot)org>
2007-02-03 00:59:54 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-03 01:56:31 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-02-03 02:03:13 from David Fetter <david(at)fetter(dot)org>
2007-02-03 03:01:33 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-04 15:45:28 from David Fetter <david(at)fetter(dot)org>
2007-02-04 21:00:12 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-07 08:26:00 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-07 14:23:58 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-02-07 19:07:30 from David Fetter <david(at)fetter(dot)org>
2007-02-08 00:20:25 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-09 03:22:58 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-09 03:35:52 from Neil Conway <neilc(at)samurai(dot)com>
2007-02-09 03:39:04 from Alvaro Herrera <alvherre(at)commandprompt(dot)com>
2007-02-09 03:46:09 from Bruce Momjian <bruce(at)momjian(dot)us>
2007-02-09 09:08:57 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-09 22:46:06 from Neil Conway <neilc(at)samurai(dot)com>
2007-02-10 00:33:38 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-10 06:57:46 from Neil Conway <neilc(at)samurai(dot)com>
2007-02-10 08:33:59 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-10 09:26:00 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-11 00:08:33 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-15 00:49:32 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-15 02:10:54 from Bruce Momjian <bruce(at)momjian(dot)us>
2007-02-15 05:50:08 from Neil Conway <neilc(at)samurai(dot)com>
2007-02-15 08:22:27 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2007-02-15 08:56:06 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-15 09:57:45 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2007-02-15 15:34:23 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-02-15 20:10:56 from David Fetter <david(at)fetter(dot)org>
2007-02-15 13:55:35 from Alvaro Herrera <alvherre(at)commandprompt(dot)com>
2007-02-15 15:37:26 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-02-15 15:56:25 from Alvaro Herrera <alvherre(at)commandprompt(dot)com>
2007-02-15 16:57:09 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2007-02-16 07:02:33 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-16 12:19:55 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2007-02-16 16:11:21 from David Fetter <david(at)fetter(dot)org>
2007-02-16 16:54:47 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2007-02-16 17:49:36 from David Fetter <david(at)fetter(dot)org>
2007-02-16 18:03:32 from Andrew Dunstan <andrew(at)dunslane(dot)net>
2007-02-16 18:28:39 from David Fetter <david(at)fetter(dot)org>
2007-02-16 18:19:54 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2007-02-16 23:18:15 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-17 08:02:24 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2007-02-17 08:16:06 from David Fetter <david(at)fetter(dot)org>
2007-02-17 09:20:08 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2007-02-17 16:19:11 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-02-17 19:32:58 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-17 19:43:14 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-02-18 00:10:20 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-18 06:15:43 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-18 17:32:41 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2007-02-18 20:03:35 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-18 23:10:51 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-18 23:27:11 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-02-18 23:56:08 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-20 22:18:22 from Bruce Momjian <bruce(at)momjian(dot)us>
2007-03-18 05:47:07 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-03-18 05:49:30 from Neil Conway <neilc(at)samurai(dot)com>
2007-03-20 21:19:05 from Neil Conway <neilc(at)samurai(dot)com>
2007-03-21 05:50:06 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-03-21 06:12:55 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-03-21 12:34:12 from Gregory Stark <stark(at)enterprisedb(dot)com>
2007-03-21 12:51:38 from Gregory Stark <stark(at)enterprisedb(dot)com>
2007-03-22 05:17:03 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-03-22 05:32:53 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-03-22 05:47:44 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-03-27 00:52:47 from Bruce Momjian <bruce(at)momjian(dot)us>
2007-03-27 02:03:01 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-03-27 02:09:00 from Bruce Momjian <bruce(at)momjian(dot)us>
2007-03-27 02:18:38 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-03-27 13:56:04 from Bruce Momjian <bruce(at)momjian(dot)us>
2007-03-21 13:45:48 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-03-22 00:09:22 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-03-22 04:42:23 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-03-22 05:21:28 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-03-27 13:56:12 from Bruce Momjian <bruce(at)momjian(dot)us>
2007-03-28 19:00:22 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-03-28 21:09:37 from Bruce Momjian <bruce(at)momjian(dot)us>
2007-03-28 23:00:32 from Neil Conway <neilc(at)samurai(dot)com>
2007-02-17 08:23:17 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-17 17:12:54 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2007-02-17 19:27:06 from Mark Dilger <pgsql(at)markdilger(dot)com>
2007-02-15 17:02:58 from David Fetter <david(at)fetter(dot)org>
2007-02-16 00:35:46 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2007-02-16 00:59:15 from David Fetter <david(at)fetter(dot)org>
2007-02-16 01:20:52 from Andrew Dunstan <andrew(at)dunslane(dot)net>
2007-02-15 23:15:31 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-07 20:34:23 from Jeremy Drake <pgsql(at)jdrake(dot)com>
2007-02-07 20:37:24 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Lists:
pgsql-hackers pgsql-patches
On Fri, 2 Feb 2007, Jeremy Drake wrote:
> jeremyd=# select * from regexp_matches('foobarbequebaz',
> $re$(bar)(beque)$re$, false);
> prematch | fullmatch | matches | postmatch
> ----------+-----------+-------------+-----------
> \N | \N | {bar,beque} | \N
> (1 row)
I just changed this to fill in fullmatch when the bool is false, so this
one would look like:
prematch | fullmatch | matches | postmatch
----------+-----------+-------------+-----------
\N | barbeque | {bar,beque} | \N
(1 row)
I also removed my check for capture groups, since in this setup you could
get useful output without any. I am still trying to decide whether or not
to add back an error if you called the no-bool version which just returns
the array, and you do not have any capture groups. ISTM this is likely an
oversight on the query author's part, and it would be helpful to alert him
to this.
If you have no capture groups, the matches array is empty (not null). If
the match happened at the start of the string, the prematch is an empty
string, and if the match happened at the end of the string, the postmatch
is an empty string.
> Reasonable?
--
It's odd, and a little unsettling, to reflect upon the fact that
English is the only major language in which "I" is capitalized; in many
other languages "You" is capitalized and the "i" is lower case.
-- Sydney J. Harris
In response to
Responses
pgsql-hackers by date
Next :From: Michael MeskesDate: 2007-02-02 09:01:26
Subject : Re: Why is ecpg segfaulting on buildfarm member "clownfish"?
Previous :From : NikhilSDate : 2007-02-02 08:54:01
Subject : Re: --enable-debug does not work with gcc
pgsql-patches by date
Next :From: Magnus HaganderDate: 2007-02-02 09:12:04
Subject : pre-vcbuild win32 install docs incorrect
Previous :From : Jeremy DrakeDate : 2007-02-02 08:15:15
Subject : Re: writing new regexp functions