select 'depesz depeszx depesz' ~ E'^(.*)( \\1)+$'; what's worse: $ select regexp_replace( 'depesz depeszx depesz', E'^(.*)( \\1)+$', E'\\1' ); regexp_replace ──────────────── depesz (1 row) I know that Pg regexps are limited, but even grep's regexps match this correctly: =$ printf 'depesz depesz depesz\ndepesz depeszx depesz\n' | grep -E '^(.*)( \1)+$'; depesz depesz depesz Best regards, depesz -- The best thing about modern society is how easy it is to avoid contact with it. http://depesz.com/ -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general