Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re: Best programming practice

by Sidhekin (Priest)
on Oct 28, 2007 at 22:15 UTC ( [id://647752]=note: print w/replies, xml ) Need Help??


in reply to Best programming practice

The second feels the cleaner approach to me as well, but it is not correctly implemented. So I suppose one could argue it is too clever. Alternatively, one could fix it:

sub ripper2b { ## Second implementation, take b my $file = $_; return unless s/\.(?!$ext)\w+$//i; my $priority = "$_.$ext"; if (-e $priority && !-d $priority) { $nom += unlink $file; } }
My two fixes:
  • (?!$ext) is zero-width, so (?!$ext)$ is just $. We need to remove the extension as well, whatever it is, so add \w+ to the regex.
  • The "." was removed by the substitution, so we need to add it again along with $ext.

If that does not make sense to you, the second implementation is just too clever. Go with the first.

print "Just another Perl ${\(trickster and hacker)},"
The Sidhekin proves Sidhe did it!

Replies are listed 'Best First'.
Re^2: Best programming practice
by KurtSchwind (Chaplain) on Oct 30, 2007 at 14:19 UTC
    I think you went the right way. The 2nd one is much closer to working than the first. I'm not even entirely sure what $wang was supposed to hold. Also, I would have missed the \w+.
    -- I used to drive a Heisenbergmobile, but everyone I looked at the speedometer, I got lost.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (None)
    As of 2024-04-25 03:56 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?

      No recent polls found