Skip site navigation (1) Skip section navigation (2)

Re: regular expressions troubles with char cols

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: dbahena(at)tpv(dot)com(dot)mx
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: regular expressions troubles with char cols
Date: 2000-07-03 14:11:23
Message-ID: 18882.962633483@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-hackers
dbahena(at)tpv(dot)com(dot)mx writes:
> ventasge2000=# create table t1 (c1 char(10),c2 varchar(10));
> CREATE
> ventasge2000=# insert into t1 values('XXX666','XXX666');
> INSERT 182218 1
> ventasge2000=# select * from t1 where c1 ~ '666$';
>  c1 | c2 
> ----+----
> (0 rows)
> ventasge2000=# select * from t1 where c2 ~ '666$';
>      c1     |   c2   
> ------------+--------
>  XXX666     | XXX666
> (1 row)

> Doesn't regular expressions(in particular the $ metachar) work properly 
> with char columns????

I see no bug there --- you've forgotten about the trailing spaces in
the char(10) column.  Try c1 ~ '666 *$' if you want to match against a
variable amount of padding in a char(N) column.  But really I'd suggest
using the appropriate datatype to begin with, and evidently char(N) is
not it for your use of this table.

			regards, tom lane

In response to

pgsql-hackers by date

Next:From: Chris BitmeadDate: 2000-07-03 14:19:31
Subject: PQprint
Previous:From: eisentrpDate: 2000-07-03 14:04:08
Subject: fcntl(F_SETLK)

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group