Re: writing new regexp functions

Поиск
Список
Период
Сортировка
От David Fetter
Тема Re: writing new regexp functions
Дата
Msg-id 20070202171227.GA28220@fetter.org
обсуждение исходный текст
Ответ на Re: writing new regexp functions  (Jeremy Drake <pgsql@jdrake.com>)
Список pgsql-hackers
On Fri, Feb 02, 2007 at 12:54:30AM -0800, Jeremy Drake wrote:
> 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?

This is great :)

Cheers,
D
-- 
David Fetter <david@fetter.org> http://fetter.org/
phone: +1 415 235 3778        AIM: dfetter666                             Skype: davidfetter

Remember to vote!


В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Pavel Stehule"
Дата:
Сообщение: Re: PL/pgSQL RENAME functionality in TODOs
Следующее
От: Kate F
Дата:
Сообщение: Re: Function proposal to find the type of a datum