-----Original Message----- From: pgsql-general-owner@xxxxxxxxxxxxxx [mailto:pgsql-general-owner@xxxxxxxxxxxxxx] On Behalf Of Merlin Moncure Sent: Tuesday, December 13, 2011 11:39 AM To: rob@xxxxxxxxxxxxxxxxxxxx Cc: David Johnston; Szymon Guz; pgsql-general Subject: Re: order of (escaped) characters in regex range On Tue, Dec 13, 2011 at 7:51 AM, InterRob <rob.marjot@xxxxxxxxx> wrote: > Thanks guys, i see what you mean. > > I do intend to use the PG escaping, in order to avoid that annoying > warning... Hence, my expression should indeed be: > SELECT regexp_matches('123-A' , E'(3[A-Z\\-\\(\\) ])'); > > In the above expression i added the parentheses as I whish to match > these as well :)) I advise dollar quoting when writing complicated regular expressions: E'(3[A-Z\\-\\(\\) ])' becomes $$(3[A-Z\-\(\) ])$$ merlin -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general --------------------------------------------------------------- Aside from backward compatibility, and the various warnings, is there any reason to prefer dollar-quoting over a non-SQL-escaped string literal (i.e., '3[A-Z\-\(\) ]' ) ? David J. -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general