Re: BUG #3487: regular exp

Поиск
Список
Период
Сортировка
От Magnus Hagander
Тема Re: BUG #3487: regular exp
Дата
Msg-id 20070726075309.GA22213@svr2.hagander.net
обсуждение исходный текст
Ответ на BUG #3487: regular exp  ("Mikhail" <Tuchkov.Michail@gmail.com>)
Список pgsql-bugs
On Thu, Jul 26, 2007 at 05:53:54AM +0000, Mikhail wrote:
>
> The following bug has been logged online:
>
> Bug reference:      3487
> Logged by:          Mikhail
> Email address:      Tuchkov.Michail@gmail.com
> PostgreSQL version: 8.1
> Operating system:   windows 2003 SP2
> Description:        regular exp
> Details:
>
> 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?

Because substring() returns NULL when there is no match, not the empty
string. So you need
IF substring(str from '^[a-zA-Z]*://') IS NULL THEN
...

//Magnus

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

Предыдущее
От: Тучков Михаил
Дата:
Сообщение: bug with RE
Следующее
От: Stephan Szabo
Дата:
Сообщение: Re: bug with RE