[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pgsql-bugs
Subject:    Re: [BUGS] bug with RE
From:       Stephan Szabo <sszabo () megazone ! bigpanda ! com>
Date:       2007-07-26 15:08:51
Message-ID: 20070726080335.M12817 () megazone ! bigpanda ! com
[Download RAW message or body]


On Thu, 26 Jul 2007, [UTF-8] ТÑ^CÑ^Gков Ð^\иÑ^Eаил wrote:

> Please, help me!
> My code:
> "IF char_length(substring(str from '^[a-zA-Z]*://'))=0 THEN
>    str:= 'http://'||str;
> END IF;"
>
> If str= http://www.msn.com then nothing happen
> (all is OK), but if str= just www.msn.com then nothing happen too!
>
> Why?


According to:
 http://www.postgresql.org/docs/8.2/interactive/functions-matching.html
a non-match returns NULL, whose char_length is also NULL.

Using one of the regexp operators ~ or ~* would probably be easier, but if
you really wanted to do this with substring, you should be checking for no
match, not a 0 length match.


---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic