On Wed, 2007-10-10 at 09:11 +0200, Albe Laurenz wrote:
> Ow Mun Heng wrote:
> > Input is of form 
> > 
> > 'ppp','aaa','bbb'
> > 
> > I want it to be stripped of quotes to become
> > 
> > ppp,aaa,bbb
> > 
> > escaping the quote would work but it means I will have
> > to do some magic on the input as well to escape it prior
> > to replacing it.
> > 
> > select replace('AB\'A','\'','C') this works
> > 
> > Can I buy a clue here?
> 
> Sorry, all the advisives are free here.
> 
> I'm a little confused that you think that you will have to
> escape single quotes in the input.
> What is your use case? Normally the input is in some variable
> in some programming language.
> Escaping single quotes is only for string literals.
> 
> Like this:
> 
> CREATE FUNCTION rep(v text) RETURNS text
>   LANGUAGE sql IMMUTABLE STRICT AS
> $$SELECT replace($1, '''', '')$$;
> 
> BTW, I would use '' instead of \' to escape single quotes.
> It is safer and standard compliant.

The input is for an SRF which accepts an array..

eg:
select * from foo(date1,date2,'{aaa,bbb,ccc}')

where the function goes..
create function foo(timestamp, timestamp, foo_list text[]) returns setof
results as
...
where foo_list = any (foo_list)
..




---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Reply via email to