That PDF link in your post looks like it could be for the full (or partial) copy of a published book. I'm not a lawyer, but I believe that posting that kind of link may not be compliant with copyright laws.

Look at Chapter 4 that describes NFA and DFA engines. A short way into that chapter, there is a section called "Match Basics" that covers what is common with both engines. In particular, look at the first rule about earliest match wins. It describes that the regex engine looks at the beginning of the string to apply the regex there. If it doesn't match, it moves to the next character and tries the regex again. Both NFA and DFA will do this.

If you install Regexp::Debugger, you can try your sample text and regex to walk through what the regex engine is doing. You'll see that it is applying that first match wins rule to your string.

I could be wrong, but I believe that your sample text and regex really isn't a good example to use to determine if a regex engine is NFA or DFA.


In reply to Re: Is RegEx in Perl not NFA anymore? by dasgar
in thread Is RegEx in Perl not NFA anymore? by redbull2012

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.