Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: Re: (GOLF)Re: Leading Zeros w/ increment

by extremely (Priest)
on Apr 05, 2001 at 23:12 UTC ( [id://70232]=note: print w/replies, xml ) Need Help??


in reply to Re: (GOLF)Re: Leading Zeros w/ increment
in thread Leading Zeros w/ increment

If you don't need to pad then $count++ works fine. The trick to this all is that perl's ++ is magical on some strings. Try these:
my ($a, $b, $c, $d, $e) = ("aaa", "ab000", "123", "00123", "321ba",); $a++; $b++; $c++; $d++; $e++; print "a=$a\nb=$b\nc=$c\nd=$d\ne=$e\n"

You'll notice when you run those that $e gets chopped to just numbers. In fact, my stunting isn't really necessary since perl will happily leave the "00" on the front of $d! The only trick to it is never treating $d as a number. Look at this:

# now that is golfing. perl -e '$a="0035";until("$a">50){print++$a,$/}'

Cute huh? Perl is like a squirrel's nest. Good stuff is everywhere but most of it is nuts...

Your code could be re-updated to have quotes around "$String" in the comparison for the loop and just have $String++ where the "magical" part was. Sad that I didn't even know how slick it was. My stunt kept the comparison from blasting the string but it is better just to never treat it numerically.

--
$you = new YOU;
honk() if $you->love(perl)

Replies are listed 'Best First'.
Re: Re: Re: (GOLF)Re: Leading Zeros w/ increment
by idnopheq (Chaplain) on Apr 06, 2001 at 21:57 UTC
    I just had what my high school calculus teacher referred to as a "a-ha experience"! I was treating my script's $d exquivallent as a number, then as text!

    THX
    Dex

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (5)
As of 2024-03-19 02:53 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found