From: | "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com> |
---|---|
To: | David Rowley <david(dot)rowley(at)2ndquadrant(dot)com> |
Cc: | Daniel Gustafsson <daniel(at)yesql(dot)se>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Tighten up a few overly lax regexes in pg_dump's tap tests |
Date: | 2019-02-05 05:55:56 |
Message-ID: | CAKFQuwaRuVG__-8AbaM+sU9RqFgp9vmaF_G1qc2qPOoyqV3d_g@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Monday, February 4, 2019, David Rowley <david(dot)rowley(at)2ndquadrant(dot)com>
wrote:
> On Tue, 5 Feb 2019 at 01:12, Daniel Gustafsson <daniel(at)yesql(dot)se> wrote:
> > We may also want to use the + metacharacter instead of * in a few
> places, since
> > the intent is to always match something, where matching nothing should be
> > considered an error:
> >
> > - qr/^ALTER TEXT SEARCH DICTIONARY
> dump_test.alt_ts_dict1 OWNER TO .*;/m,
> > + qr/^ALTER TEXT SEARCH DICTIONARY
> dump_test\.alt_ts_dict1 OWNER TO .*;/m,
>
> I looked for instances of * alone and didn't see any. I only saw ones
> prefixed with ".", in which case, isn't that matching 1 or more chars
> already?
No. In Regex the following are equivalent:
.* == .{0,}
.+ == .{1,}
. == .{1}
A “*” by itself would either be an error or, assuming the preceding
character is a space (so it visually looks alone) would be zero or more
consecutive spaces.
In the above “...OWNER TO<space>;” is a valid match.
David J.
From | Date | Subject | |
---|---|---|---|
Next Message | Fabien COELHO | 2019-02-05 05:57:06 | Re: Online verification of checksums |
Previous Message | David Rowley | 2019-02-05 04:53:54 | Re: Tighten up a few overly lax regexes in pg_dump's tap tests |