"Can someone help me please?"
Can you be more specific about what you don't understand?
If $foo is a string of alpha characters and you use ++ you get a string with
the last character incremented alphabetically.
This does not work both ways, -- does not reverse the effect of ++ on
strings.
/\/\ark
-----Original Message-----
From: Anil Shekhar [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, October 08, 2002 9:48 AM
To: [EMAIL PROTECTED]
Subject: autoincrement and autodecrement
Hi ...
I am trying to understand the auto-incr/decr out of the 'perlop' man page.
I could not fully understand the following.
"If, however, the variable has been used in only string contexts since it
was set, and has a value that is not the empty string and matches the
pattern /^[a-zA-Z]*[0-9]*$/, the increment is done as a string, preserving
each character within its range, with carry:
print ++($foo = 'Az'); # prints 'Ba'
print ++($foo = 'zz'); # prints 'aaa'
"
Can someone help me please?
Thanks
Anil
Auto-increment and Auto-decrement
``++'' and ``--'' work as in C. That is, if placed before a variable, they
increment or decrement the variable before returning the value, and if
placed after, increment or decrement the variable after returning the value.
The auto-increment operator has a little extra builtin magic to it. If you
increment a variable that is numeric, or that has ever been used in a
numeric context, you get a normal increment. If, however, the variable has
been used in only string contexts since it was set, and has a value that is
not the empty string and matches the pattern /^[a-zA-Z]*[0-9]*$/, the
increment is done as a string, preserving each character within its range,
with carry:
print ++($foo = '99'); # prints '100'
print ++($foo = 'a0'); # prints 'a1'
print ++($foo = 'Az'); # prints 'Ba'
print ++($foo = 'zz'); # prints 'aaa'
The auto-decrement operator is not magical.
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]