Re: [PATCH] git send-email: edit recipient addresses with the --compose flag
- From
- Ian Hilt <ian.hilt@gmx.com>
- Date
- Nov 10, 2008, 00:38 UTC
- Message-ID
- <alpine.LFD.2.00.0811091910570.21142@sys-0.hiltweb.site>
- In-Reply-To
- <7viqqwa6wo.fsf@gitster.siamese.dyndns.org>
On Sun, 9 Nov 2008, Junio C Hamano wrote:
Show 23 quoted lines
> Ian Hilt <ian.hilt@gmx.com> writes:
>
> > On Sun, 9 Nov 2008, Francis Galiegue wrote:
> >> Le Sunday 09 November 2008 13:59:48 Ian Hilt, vous avez écrit :
> >> > + if ($c_file =~ /^To:\s*+(.+)\s*\nCc:/ism) {
> >>
> >> Greedy operators are only supported with perl 5.10 or more... I think it's a
> >> bad idea to use them...
> >
> > The problem here was that a space should follow the field, but it may
> > not. The user may unwarily backup over it. "\s*" would match this
> > case.
> >
> > But if there is a space, it is included in the "(.+)". So I tried
> > "\s+", which did not include the space, but it won't include the first
> > address if there isn't a space after the field.
> >
> > The quantified subpattern seemed to do the trick. But, if it could
> > result in a dependency issue, I would agree this would be a bad idea.
>
> You expect something non-blank there anyway, so why not do:
>
> To:\s*(\S.*?)\s*\n....That works. Although, I seem to be missing Francis' point. According to perlre, a quantified subpattern is "greedy". So a "greedy operator" is any one of the standard quantified subpatterns. The "+" and "?" modify its matching behavior. And it seems to me that it _has_ to use a q.s. to work ...