Thread: Need regexp_replace help

Need regexp_replace help

From
"Gauthier, Dave"
Date:
Trying ( and failing) to get this to run...

select regexp_replace(pg_get_functiondef(proname::regproc),E'[ ]+\\+\n','\n=
') from pg_proc where proname =3D 'maketime';

Goal is to remove the space padding and the "+" at the end of each line in =
the dump of pg_get_functiondef, something that could actually be run if sen=
t out to a file (\o) and then read into another DB (\i).  Of course the ";"=
 would have to be appended at the end, but I can manage that :-)

Thanks in Advance !

Re: Need regexp_replace help

From
Merlin Moncure
Date:
On Thu, Feb 14, 2013 at 3:37 PM, Gauthier, Dave <dave.gauthier@intel.com> wrote:
> Trying ( and failing) to get this to run...
>
>
>
> select regexp_replace(pg_get_functiondef(proname::regproc),E'[
> ]+\\+\n','\n') from pg_proc where proname = 'maketime';
>
>
>
> Goal is to remove the space padding and the "+" at the end of each line in
> the dump of pg_get_functiondef, something that could actually be run if sent
> out to a file (\o) and then read into another DB (\i).  Of course the ";"
> would have to be appended at the end, but I can manage that :-)

this isn't a regex issue, but a psql one.    Just disable alignment
and set tuples only etc.  Whenever I do this type of thing (intend
psql output to some consumer),  it's:

psql -XtAqc "query"  > file

there are similar options to do this via various \set commands.

merlin