Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Regex substitution modifier /r

by nonsequitur (Monk)
on Dec 15, 2012 at 00:25 UTC ( #1008916=perlquestion: print w/replies, xml ) Need Help??
nonsequitur has asked for the wisdom of the Perl Monks concerning the following question:

I have been trying to use the regex substitution modifier "r" to work with no success. I finally tried running the examples from perlrequick and cannot get them to work either. This example is from the section titled "The non-destructive modifier s///r".

$x = "I like dogs."; $y = $x =~ s/dogs/cats/r; print "$x $y\n"; # prints "I like dogs. I like cats."

When I run it I get this error.I get the same error using strict and declaring the variables.

Bareword found where operator expected at line 2, near "s/dogs/ca +ts/r" syntax error at line 2, near "s/dogs/cats/r"

Can anyone tell me what's wrong?

Replies are listed 'Best First'.
Re: Regex substitution modifier /r
by davido (Archbishop) on Dec 15, 2012 at 00:35 UTC

    Type perl -v.

    The /r feature was introduced in Perl 5.14.0: perl5140delta.


Re: Regex substitution modifier /r
by toolic (Bishop) on Dec 15, 2012 at 00:40 UTC
    That syntax was introduced in version perl5140delta. You need to upgrade if you want to use it.
Re: Regex substitution modifier /r
by Anonymous Monk on Dec 15, 2012 at 04:34 UTC
    If you read about it in your local perlrequick, then you must have two perl's in your $PATH -- use the newer one, with the bigger version number :)
Re: Regex substitution modifier /r
by nonsequitur (Monk) on Dec 15, 2012 at 09:41 UTC

    Thank you all for your help. I did not notice that I had not updated my path. It is working now.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://1008916]
Approved by toolic
[james28909]: it is not an absolute date like "27" or "31". sometimes it is like wednesday or friday
[james28909]: and i need to format those special instances into an absolute date instead of "yesterday"
[stevieb]: ask a question on SoPW, and include at least a half-dozen examples of the input, and at least one example of expected output
[davido]: Exactly: SoPW. This isn't going to be solved easily in the CB.
[james28909]: in need "yesterday" and so on, to be absolute like "1" or "31"
[stevieb]: ...and throw some of your existing code into the equation as well, just so readers know you've given a try at it ;)
[james28909]: ok
[stevieb]: davido thanks for the link ;) I was being the typical lazy
[davido]: date parsing is hard. The more examples you can provide of the input (within reason) and expected output, the better.
[stevieb]: agreed. That's why I said at least a half-dozen. If enough of the different formats are present, the date/time folk may not have to request more. If they do, then at least there was a decent base to start with

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (5)
As of 2017-04-29 02:38 GMT
Find Nodes?
    Voting Booth?
    I'm a fool:

    Results (531 votes). Check out past polls.