Re: writing new regexp functions

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-03 00:59:54
Message-ID: Pine.BSO.4.64.0702021653360.28908@resin.csoft.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

On Fri, 2 Feb 2007, Jeremy Drake wrote:

> I just coded up for this:
>
> CREATE FUNCTION regexp_matches(IN str text, IN pattern text) RETURNS
> text[]
> AS 'MODULE_PATHNAME', 'regexp_matches'
> LANGUAGE C IMMUTABLE STRICT;
>
> CREATE FUNCTION regexp_matches(
> IN str text, IN pattern text, IN return_pre_and_post bool,
> OUT prematch text, OUT fullmatch text, OUT matches text[], OUT
> postmatch text) RETURNS record
> AS 'MODULE_PATHNAME', 'regexp_matches'
> LANGUAGE C IMMUTABLE STRICT;
>

I wanted to put out there the question of what order the parameters to
these regex functions should go. ISTM most people expect them to go
(pattern, string), but I made these functions consistant with
substring(text,text) which takes (string, pattern). Now I have been
working on a regexp_split function, which takes (pattern, string), which
is what someone familiar with the function from perl would expect, but is
not consistant with substring or now with my regexp_matches function.

I want to ask, should I break with following substring's precedent, and
put the pattern first (as most people probably would expect), or should I
break with perl's precedent and put the pattern second (to behave like
substring)?

--
We cannot put the face of a person on a stamp unless said person is
deceased. My suggestion, therefore, is that you drop dead.
-- James E. Day, Postmaster General

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Florian G. Pflug 2007-02-03 01:37:09 Re: Referential Integrity and SHARE locks
Previous Message Joshua D. Drake 2007-02-02 23:14:36 Re: Re: [pgsql-patches] [GENERAL] Corrupt database? 8.1/FreeBSD6.0

Browse pgsql-patches by date

  From Date Subject
Next Message Tom Lane 2007-02-03 01:56:31 Re: writing new regexp functions
Previous Message Joshua D. Drake 2007-02-02 23:14:36 Re: Re: [pgsql-patches] [GENERAL] Corrupt database? 8.1/FreeBSD6.0