Search Postgresql Archives

Re: regexp_replace to remove sql comments

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>________________________________________
>Von: pgsql-general-owner@xxxxxxxxxxxxxx [pgsql-general-owner@xxxxxxxxxxxxxx]" im Auftrag von "Mike [mike@xxxxxxxxxxxx]
>Gesendet: Mittwoch, 28. Oktober 2015 20:04
>An: pgsql-general@xxxxxxxxxxxxxx
>Betreff:  regexp_replace to remove sql comments
>
>Hi,
>
>I am trying to clean up the query field returned by the
>pg_stat_statements extension and remove all comments.
>
>Some of the queries in the query field contain comments like '-- some
>comment' and also '/* c style comments */'
>
>I have managed to strip off the '--' comments and also white space but
>after trying numerous regex for this via google but I am stuck.
>
>WITH to_clean AS (
>   SELECT
>     regexp_replace(
>        regexp_replace(trim(query), '--[^\r\n]*', '')  --clear up
>comments like this one <-- this is ok
>     , '\s+', ' ', 'g') as q    --clear up white space  <-- this is ok
>   FROM public.pg_stat_statements
>   WHERE dbid IN (SELECT oid FROM pg_database WHERE datname =
>current_database())
>)
>
>SELECT  regexp_replace(q,'/\*.*\*/','') as q  /* strip off comments like
>this */ <-- cannot get a regex to do this
>FROM to_clean ORDER BY q

Hi,
Does this help ?

select regexp_replace(' aaa /*
x
y
z
*/ foo', '\/\*.+\*\/','','g'):

regards,

Marc Mamin

>
>Im now thinking it may be better to do in a pgsql function as I think if
>the comments are in queries then they need to be ignored.
>
>Has anyone done anything like this?
>
>Thanks,
>
>Mike.
>
>
>
>--
>Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
>To make changes to your subscription:
>http://www.postgresql.org/mailpref/pgsql-general
>

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux