bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#26338: 26.0.50; Collect all matches for REGEXP in current buffer


From: Tino Calancha
Subject: bug#26338: 26.0.50; Collect all matches for REGEXP in current buffer
Date: Fri, 7 Apr 2017 19:06:30 +0900 (JST)
User-agent: Alpine 2.20 (DEB 67 2015-01-07)



On Wed, 5 Apr 2017, address@hidden wrote:

Tino Calancha <address@hidden> writes:


So far people think that it's easy to write a while loop.  I wonder if
they think the same about the existence of `dolist': the should
never use it and always write a `while' loop instead.  Don't think they
do that anyway.

Perhaps a macro that loops over matches?

   (defmacro domatches (spec &rest body)
     "Loop over matches to REGEXP.

     \(fn (MATCH-VAR [GROUP] REGEXP [BOUND]) BODY...)")

Or an addition to cl-loop that would allow doing something like

   (cl-loop for m being the matches of "foo\\|bar"
            do ...)

Then you could easily 'collect m' to get the list of matches if you want
that.
Your proposals looks nice to me ;-)

I will repeat it once more.  I find nice, having an operator returning
a list with matches for REGEXP.

I don't think that's come up for me very much, if at all.  It seems
easier to just operate on the matches directly rather than collecting
and then mapping.
Sometimes i want to collect matches for different purposes; feed them into
another functions accepting a list.  That's why i miss a standard operator
collecting matches.  Sure, it can be done with a `while' loop, and 3-5
lines.  With the operator would be just one function call.

If such operator, in addition,
accepts a body of code or a function, then i find this operator very
nice
and elegant.

Forcing collection on the looping operator seems inelegant to me.
You know, the beauty is in the eyes watching.  The elegance too.  Maybe
you don't like the blue jersey i am wearing now; my mum made it
for me and i love it ;-)
Suppose depend on the name of the operator. Not a sorprise if `collect-matches' collect matches; a bit of sorprise if
`domatches' does such thing.
Thank you for your opinion :-)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]