变量 一. 直接量---常量 perl中常量和其他语言例如C语言没什么太大区别。所以在下面指出一些与其他语言不相同的地方。 1.1 数字常量 在perl中可以表示八进制和十六进制。八进制以0打头,十六进制以0x打头。 例如 $a=010 ---八进制 $b=0x10---十六进制 为了不跟八进制的数字混淆,数字直接量均不以0打头。对于大数字,通常会加逗号或下划线加以区分perl可以直接删除这些附加信息。 1.2 字符常量 首先perl中的字串结尾没有默认的结束符这与C语言相区别。perl中的结束符可以出现在字串的任何位置。在perl中有两种表现字串的方式一种是双引号,另一种是单引号。 例如 $string1="abcde" $string2="fghijk" 为了使字串中包含引号,必须用/来把引号正常话。否则会造成字串不完整。 例如 $string3="cut the "string""====cut the 改变成 $string3="cut the /"string/""====cut the string 此规则同样适用于单引号字串。 另外perl还引入了qq和q机制来去除引号的影响。qq针对双引号,q则针对单引号。 例如 $string4=qq(the cut "strint")====the cut string $string5=q(the cut `string`)====the cut string 类似于C语言中/n,perl字串中有一些转义字符。如下表: /a Bell (beep) /b Backspace /cn The Ctrl+n character /e Escape /E Ends the effect of /L, /U or /Q /f Form feed /l Forces the next letter into lowercase /L All following letters are lowercase /n Newline /r Carriage return /Q Do not look for special pattern characters /t Tab /u Force next letter into uppercase /U All following letters are uppercase /v Vertical tab 例如 $string6="abc/LWO/Etian/t/udi/E"===="abcwotian UDI"单引号区别双引号在于以下两点: 1。单引号支持多行 例如 $string7='i am brother' 2. 单引号只支持单引号本身转义符,不支持其他转义符。 3。单引号不支持变量直接替换。 例如 $number=12; $string8="the number is $number"; 最后的string8是 the number is 12而单引号不可以。 二。标量变量---变量 perl中变量不像C语言中那样死板,随定随用。以美元起始$,遵循以下三个规则: 1。变量名可以包含字母(a至z , A至Z)字符、数字或类型标识符后面的一个下划线字符(_)。不过,变量名的第一个字符不能是数字。 2. 变量名是区分大小写字母的。 3. 单字符变量是一些系统特殊变量。$ _、$”、$ /、$ 2和$ $ 最后数字变量的初始值是0,字符串初始值是空“ ”。
http://blog.csdn.net/yc0188/archive/2007/05/28/1628033.aspx
