I think there is a prob with regexp, which is comparing one less
character as it should. Below is an example. Result is that last
character is omitted !

Ph.R.

postgres=# select * from pg_database where datname ~ 'ibd01*';
 datname | datdba | encoding | datpath 
---------+--------+----------+---------
 ibd00_8 |    505 |        0 | ibd00_8
 ibd00_1 |    505 |        0 | ibd00_1
 ibd00_2 |    505 |        0 | ibd00_2
 ibd00_3 |    505 |        0 | ibd00_3
 ibd00_4 |    505 |        0 | ibd00_4
 ibd00_5 |    505 |        0 | ibd00_5
 ibd00_6 |    505 |        0 | ibd00_6
 ibd00_7 |    505 |        0 | ibd00_7
 ibd00_9 |    505 |        0 | ibd00_9
 ibd01_1 |    505 |        0 | ibd01_1
 ibd01_2 |    505 |        0 | ibd01_2
 ibd01_3 |    505 |        0 | ibd01_3
 ibd01_4 |    505 |        0 | ibd01_4
 ibd01_5 |    505 |        0 | ibd01_5
(14 rows)

postgres=# select * from pg_database where datname ~ 'ibd01_*';
 datname | datdba | encoding | datpath 
---------+--------+----------+---------
 ibd01_1 |    505 |        0 | ibd01_1
 ibd01_2 |    505 |        0 | ibd01_2
 ibd01_3 |    505 |        0 | ibd01_3
 ibd01_4 |    505 |        0 | ibd01_4
 ibd01_5 |    505 |        0 | ibd01_5
(5 rows)

Thu, 22 Mar 2001 19:08:13 +0100
Philippe Rochat <mlrochat@lbdsun.epfl.ch>
Prob with regexp
Philippe Rochat <mlrochat@lbdsun.epfl.ch> writes:
> I think there is a prob with regexp, which is comparing one less
> character as it should. Below is an example. Result is that last
> character is omitted !

Possibly there is a problem with your understanding of regexp patterns
... but all those matches look valid to me.  See
http://www.postgresql.org/devel-corner/docs/postgres/functions-matching.html
for more info.

			regards, tom lane

Sun, 25 Mar 2001 14:51:31 -0500
Tom Lane <tgl@sss.pgh.pa.us>
Re: Prob with regexp 
Philippe Rochat writes:

> I think there is a prob with regexp, which is comparing one less
> character as it should. Below is an example. Result is that last
> character is omitted !

A '*' means "zero or more of the preceeding character".  You probably want
a '+'.

>
> Ph.R.
>
> postgres=# select * from pg_database where datname ~ 'ibd01*';
>  datname | datdba | encoding | datpath
> ---------+--------+----------+---------
>  ibd00_8 |    505 |        0 | ibd00_8
>  ibd00_1 |    505 |        0 | ibd00_1
>  ibd00_2 |    505 |        0 | ibd00_2
>  ibd00_3 |    505 |        0 | ibd00_3
>  ibd00_4 |    505 |        0 | ibd00_4
>  ibd00_5 |    505 |        0 | ibd00_5
>  ibd00_6 |    505 |        0 | ibd00_6
>  ibd00_7 |    505 |        0 | ibd00_7
>  ibd00_9 |    505 |        0 | ibd00_9
>  ibd01_1 |    505 |        0 | ibd01_1
>  ibd01_2 |    505 |        0 | ibd01_2
>  ibd01_3 |    505 |        0 | ibd01_3
>  ibd01_4 |    505 |        0 | ibd01_4
>  ibd01_5 |    505 |        0 | ibd01_5
> (14 rows)
>
> postgres=# select * from pg_database where datname ~ 'ibd01_*';
>  datname | datdba | encoding | datpath
> ---------+--------+----------+---------
>  ibd01_1 |    505 |        0 | ibd01_1
>  ibd01_2 |    505 |        0 | ibd01_2
>  ibd01_3 |    505 |        0 | ibd01_3
>  ibd01_4 |    505 |        0 | ibd01_4
>  ibd01_5 |    505 |        0 | ibd01_5
> (5 rows)
>

-- 
Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/


Sun, 25 Mar 2001 22:19:07 +0200 (CEST)
Peter Eisentraut <peter_e@gmx.net>
Re: Prob with regexp