Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options
 
PerlMonks  

Re: Best programming practice

by Sidhekin (Priest)
on Oct 28, 2007 at 22:15 UTC ( #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!


Comment on Re: Best programming practice
Select or Download Code
Re^2: Best programming practice
by KurtSchwind (Hermit) 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
Node Status?
node history
Node Type: note [id://647752]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (4)
As of 2014-11-26 06:47 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My preferred Perl binaries come from:














    Results (163 votes), past polls