I used pg_catalog.replace, it worked. Thanks for the help

On Tue, Nov 23, 2010 at 3:32 PM, Pavel Stehule <pavel.steh...@gmail.com>wrote:

> Hello
>
> it working on my comp
>
> postgres=# select mystr, test_repl(mystr) replaced_strfrom str_table;
>           mystr           |           replaced_str
> ---------------------------+----------------------------------
>  This road is INDEFLY CLSD | This road is indefinitely closed
>  That is INDEFLY open      | That is indefinitely open
>  That is a CLSD road       | That is a closed road
> (3 rows)
>
> I don't see a problem in your code, I am thinking so it's ok.
>
> try to debug code with RAISE NOTICE statement
>
> for a in select * from lookup
> loop
> RAISE NOTICE 'lookup rec: %', a;
> RAISE NOTICE 'ret_var before replace: %', ret_var;
>   ret_var := replace(ret_var,a.code,a.codeword);
> RAISE NOTICE 'ret_var after replace: %', ret_var;
> end loop;
> return ret_var;
>
> you can ensure using just buildin "replace" function - use
>
> ret_var := pg_catalog.replace(...)
>
> Regards
>
> Pavel Stehule
> maybe it can help to identify a problem
>
>
>
>
>
> 2010/11/23 akp geek <akpg...@gmail.com>:
> > Dear all -
> >                 I am having trouble with replace function inside a
> function.
> >  If I do the same replace function outside it works fine, Following
> example
> > clearly explains my problem. Can you please help?
> >
> > create table str_table
> > ( mystr varchar(1000));
> > insert into str_table values ( 'This road is INDEFLY CLSD');
> > insert into str_table values('That is INDEFLY open');
> > insert into str_table values('That is a CLSD road');
> >
> > select * from str_table;
> > create table lookup
> > ( code varchar(100),
> >   codeword varchar(100));
> >
> > insert into lookup values(  'INDEFLY','indefinitely');
> > insert into lookup values(  'CLSD','closed');
> > select 'This road is INDEFLY CLSD', test_repl('This road is INDEFLY CLSD
> > INDEFLY') replaced_str
> > from str_table;
> > RESULT SET "  This road is INDEFLY CLSD;This road is indefinitely closed
> > INDEFLY  "
> > Regards
>

Reply via email to