Flame has asked for the wisdom of the Perl Monks concerning the following question:

This has been bugging me since I started learning perl, about a year ago now. I've read in Programming Perl (Third Edition) that m//g is a global match. It's my understanding that this means it keeps matching until it no longer can, and then returns a list of what it matched (or what was captured).

The question is, what does m//cg do? According to the book, it tells it to continue matching, but I'm at a loss to understand what it means by that since there shouldn't be anything more to the pattern... should there? Could someone come up with a few working examples of m//cg and m//g in action that could demonstrate the difference?

Thank you.



"Weird things happen, get used to it."

Flame ~ Lead Programmer: GMS

Replies are listed 'Best First'.
Re: Pattern Modifiers explanation
by mitd (Curate) on Jul 26, 2002 at 05:07 UTC
    Andrew Johnson, the author of 'Elements of Programming with Perl,
    has an very complete answer to your question in this
    article.

    mitd-Made in the Dark
    'Interactive! Paper tape is interactive!
    If you don't believe me I can show you my paper cut scars!'

      Egads, those pages never render well for me --- you can see plain text versions of all my old itworld articles here and this particular one is the first in this page.

      Thanks, now I get it. Not sure if I'll ever need it, but it's good to know it's there.



      My code doesn't have bugs, it just develops random features.

      Flame ~ Lead Programmer: GMS