Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??

Are you sure you want a match, and that you can only use a single regex? I have bad news... a regular language has no context. ... Regexes will only solve a subproblem of your problem.

from ISBN 9780596004927: Programming Perl (4th Ed), Pattern Matching - Chapter 5, p. 167

If you're acquainted with regular expressions from some other venue, we should warn you that regular expressions are a bit different in Perl. First they aren't entirely "regular" in the theoretical sense of the word, which means they can do much more than the traditional regular expressions taught in Computer Science classes.
Mentioned similarly in Wikipedia

Brackets with Perl regex is a FAQ, Can I use Perl regular expressions to match balanced text?, and is also covered in Rosetta Code. The regex techniques used are relatively new(er) and somewhat advanced but other answers have discussed modules that hide the technique behind a simple interface.

Correction based on feedback from mr_mischief below:

I also studied "regular languages"/"regular sets" in computer science and, understand the confusion while understanding the intention to avoid unneeded extensions, worry that ignoring all extensions to the more formal concept of a regular expression will cause more confusion. The Wikipedia article mentions backreferences as an example of a very commonly used extension. I don't really see the difference covered in perlre , perlrequick or perlretut and would be interested in any suggestions on finding or adding the information for any of those documents.

Ron

In reply to Re^2: Regex for outside of brackets by mr_ron
in thread Regex for outside of brackets by theravadamonk

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



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others cooling their heels in the Monastery: (11)
As of 2024-03-28 09:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found