From: Aristotle Pagaltzis Date: Mon, 10 Nov 2008 08:08:48 GMT Subject: Re: [PATCH] git send-email: edit recipient addresses with the --compose flag Message-ID: <20081110080848.GA325@klangraum.plasmasturm.org> In-Reply-To: <200811100849.36736.fg@one2team.com> * Francis Galiegue [2008-11-10 08:55]: > Le Monday 10 November 2008 01:38:30 Ian Hilt, vous avez écrit : > > On Sun, 9 Nov 2008, Junio C Hamano wrote: > > > Ian Hilt 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... Possessive quantification is supported in much earlier versions of Perl, it’s just more awkward syntactically: /^To:(?>\s*)(.+)\s*\nCc:/ism But possessification is not going to make a difference in this regex, since .+ can match anything that \s* can also match, so the only difference is that if the regex does happen to backtrack, it will backtrack over all the spaces after the To: at once instead of one at a time. I have only just subscribed so I do not have enough context to know what the problem is, but based on what I have seen so far it seems to me that all you want is simply /^To:\s?(.+)\s*\nCc:/ism although I have to wonder if the /s modifier here is really what you want. > I think the correct term for *+, ++, ?+ etc is "possessive" > quantifiers, I'm just not sure. That is correct. Regards, -- Aristotle Pagaltzis //