Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re: One regex construct to handle multiple string types

by CountZero (Bishop)
on Nov 29, 2008 at 08:03 UTC ( #726743=note: print w/replies, xml ) Need Help??

in reply to One regex construct to handle multiple string types

One (of many) solutions would be to anchor your regex to the end of the string:


A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James

Replies are listed 'Best First'.
Re^2: One regex construct to handle multiple string types
by JadeNB (Chaplain) on Nov 30, 2008 at 18:34 UTC
    I think the poster didn't want so much the final two characters (which could be got by substr($_, -2) anyway) as non-space characters after a period. Of course, your regex could easily be adapted to /\.(\S+)$/; but I think the sexeger /^(\S+)\./ should be quicker on some inputs (in the sense that it doesn't have to back-track on pathological strings like '............... .a').

    UPDATE: My sexeger can behave badly on strings with multiple periods in them. Two natural changes are to make the \S+ match non-greedy, or to change \S to [^.]. These have different matching behaviour, especially on strings with characters that are neither spaces nor 'word' characters, and on strings with multiple periods; but one of them might do what the poster wants.
    Also, I changed the sample string to one that actually matches.

    UPDATE 2: Oops, on re-reading, the poster explicitly wants to allow strings without any periods at all. Never mind.

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://726743]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (3)
As of 2022-08-14 15:42 GMT
Find Nodes?
    Voting Booth?

    No recent polls found