Linux中国论坛's Archiver

lydr 发表于 2006-12-15 14:58

Perl入门指导

Perl有三种变量:

  一、纯变量

  又称标量变量,是Perl处理的最简单的数据类型。标量可以是数字(如2,3或2.5e6)
, 也可以是字符串(如“hello”和“网络教室”)。

  Perl中的标量变量以美元符号$和一个字母开始,以后可以是字母、数字和下划线,
大小写有区别,而且所有字母、数字和下划线都有效。如:

  $a和$A是不同的变量;
  $this_is_a_long_variable_1和
  $this_is_a_long_variable_2是不同的变量;

  Perl中的变量可以通过操作符(如+或.等)来产生新的变量。你可以从文件和设备中
读取变量,也可以将其输出。

  使用纯量变量时要在前面加上$符号, 注意:指定的纯变量是一个字符的话,就要加
上""双引号或单引号;如果是数值的话,就不用加上""这个符号。

  标量数据又可以分为数字和字符串两种:

  数字

  可分为整型变量和浮点变量。
  整型变量:(如2,-200,3568等)。Perl支持8进制和16进制变量,8进制以0开头(如025
5,表示8进制的255),16进制以0x或0X开头 (如-0x1a,代表负的1A)
  实型变量:(如2.5,-6.3e5,-2.3-e6等)。

  字符串

  最短的字符串可以没字符,最长可以把你的内存填满,这与Perl的“无内置限制”
的原则一致。
字符串有两种格式:单引字符串和双引字符串。
  单引字符串(single-quoted string): 就是用单引号括起来的一串字符。该单引字
符串不是字符串的一部分。 引号中可以插入任何字符。只有两种情况例外,一种是中间
插入单引号,并在前面有一反斜杠;一种是字符串有两个连着的反斜杠。
  双引字符串(double-quoted string): 就是用双引号括起来的一串字符,其作用类
似于C语言。

  双引字符串中反斜杠转义表

  结 构 含 义

\n 换行
\r 回车
\t 水平置表符
\f 换页符
\b 退格
\v 垂直置表符
\a 响铃
\e Esc
\007 任一八进制ASCII值(这里007表示bell)
\x7f 任一十六进制ASCII值
\cC 任一“控制”字符
\\ 反斜杠
\" 双引号
\l 下一字母小写
\L 以后所有字母小写直到\E
\u 下一字母大写
\U 以后所有字母大写直到\E
\E 结束\L和\U

  标量变量的运算符

1、赋值运算符
如:$a=23; #将23赋值给$a
$b=$a=23; #将23赋值给$a和$b
$b=3+($a=2); #将2赋值给$a,再加3将值赋给$b,即$b为5

2、二元赋值运算符
如:$a=+3; #等同于$a=$a+3
这与C语言中基本相同。

3、自增自减运算符
如:$a++; #等同于$a=$a+1
这与C语言中基本相同。

4、chop()运算符
如:$a="hello";
chop($a); #此时$a的值为"hell"。
这对于从屏幕获取文本后去除换行符很有用。
如:$a=; #获取文本
chop($a); #去除最后的换行符。
这两行可合并为:
chop($a=);

5、字符串的标量插入值
如:$a="zmd";
$b="hello! $a";
$b的值为"hello! zmd"。

综合示例

$url1='hello'; #将hello这串字符赋给$url1变量;
$url2='don\'t'; #将don't这串字符赋给$url2变量;
$url3='hello\n'; #将hello\n这串字符赋给$url3变量;注意\n不被当作换行符而是\和n
两个字符;
$url1="http://zmd.zb169.net; #将http://zmd.zb169.net这串字符赋给$url1变量
$url2="/cgi-bin/"; #将/cgi-bin/这个字符赋给$url2变量;
$url3=$url1.$url2; #将两个变量的字符串连起,
$url3="http://zmd.zb169.net/cgi-bin/;
$int=5; #将10赋给$int变量;
$int=5+6; #$int=11;
$int=5*6; #$int=30;
$int=5;$int++; #$int=6;
$int=5;$int+=8; #$int=13;
$a="\Uzmd";$b="\u\LZHENG";$c="$a $b" #$a="ZMD"; $b="Zheng";
$c="ZMD Zheng"

lydr 发表于 2006-12-15 14:58

Perl的运算符号字符

第四课、Perl的运算符号字符

 “持?(Assignment)运算符

符号 范例 说明
= $x = $y; 将$x的值指派给$y
+= $x += $y; $x=$x+$y; 将$x加$y之后再指派给$x
-= $x -= $y; $x=$x-$y; 将$x减$y之后再指派给$x
*= $x *= $y; $x=$x*$y; 将$x乘$y之后再指派给$x
/= $x /= $y; $x=$x/$y; 求出$x除以$y之后的商数,再指派给$x
**= $x **= $y; $x=$x**$y; 将$x乘上$y次方之后再指派给$x
%= $x %= $y; $x=$x%$y; 求出$x除以$y的余数以后,再指派给$x
.= $str1 .= $str2; $str1=$str1.$str2; 将$str1这个字符串再加上$str2这个字符串
之后,再指派给$str1这个字符串
x= $str x= $y; $str=$strx$y; 重复$str字符串$y次,并反结果指派给str这个字符串

  算术(Arithmetic)运算符

符号 范例 说明
+ $z = $x+$y
将$x和$y相加之后,再将结果指派给$z
- $z = $x-$y 将$x减掉$y之后,再将结果指派给$z
* $z = $x*$y 将$x和$y相乘之后,再将结果指派给$z
/ $z = $x/$y 将$x除以$y之后,再将商数指派给$z
% $z = $x%$y 将$x除以$y之后,再将余数指派给$z
** $z = $x**$y 将$x乘以$y之后,再将结果指派给$z
++ $x++;
++$x; 如同$x=$x++1;将$x加一以后再将结果指派给$x
-- $x--;
--$x;
如同$x=$x-1;将$x减一以后再将结果指派给$x
. $z = $x.$y 将$x字符串和$y字符串连接之后,再将结果指派给$z

  数值(Numeric Values)关系运算符

符号 范例 说明
> $x > $y 如果$x大于$y,返回1的值,否则返回0
>= $x >= $y 如果$x大于等于$y,返回1的值,否则返回0
< $x < $y 如果$x小于$y,返回1的值,否则返回0
<= $x <= $y 如果$x小于等于$y,返回1的值,否则返回0
== $x == $y 如果$x等于$y,返回1的值,否则返回0
!= $x != $y 如果$x不等于$y,返回1的值,否则返回0
<=> $x <=> $y 如果$x大于$y,返回1的值,如果$x等于$y,否则返回0;&127;如果 $x小
于$y,则返回-1的值

  字符串(String Values)关系运算符

符号 范例 说明
gt $str1 gt $str2 如果$str1大于$str2,返回1的值,否则返回0
ge $str1 ge $str2 如果$str1大于等于$str2,返回1的值,否则返回0
lt $str1 lt $str2 如果$str1小于$str2,返回1的值,否则返回0
le $str1 le $str2 如果$str1小于等于$str2,返回1的值,否则返回0
eq $str1 ep $str2 如果$str1等于$str2,返回1的值,否则返回0
ne $str1 ne $str2 如果$str1不等于$str2,返回1的值,否则返回0
cmp $str1 cmp $str2 如果$str1大于$str2,返回1的值,如果$str1等于$str2,返回0,如
果$str1小于$str2,则返回-1的值

  逻辑(Logical)运算

  1 $x&&$y(And)

   $x $y 结果

   真(True) 真(True) 真(True)

   真(True) 假(False) 真(True)

   假(False) 真(True) 假(False)

   假(False) 假(False) 假(False)

  2 $x||$y(Or)

   $x $y 结果

   真(True) 真(True) 真(True)

   真(True) 假(False) 真(True)

   假(False) 真(True) 真(True)

   假(False) 假(False) 假(False)

  3 $x(Not)

   $x 结果

   真(True) 假(False)假(False) 真(True)

  其它常用的运算符

   指令:..区块运算符(Range Operator)

   说明:这个运算符是Perl语言中特有的运算符,是一个很实用的运算符.

  范例:

   @digits=(1..9); #此时@digits=(1,2,3,4,5,6,7,8,9);
   @digits=('01'..'05'); #此时@digits=(01,02,03,04,05);
   @char=('A'..'E'); #此时@char('A','B','C','D','E',);
   @total=(1..3,'A'..'B'); #此时@total=(1,2,3'A','B');

  指令: 判别运算式?运算1:运算式2 条件运算符(Conditional Operator)

  说明: 这个语法的意义和C语言一样,如果判别运算式的值是真(True)的话,则做运算
,1的运算,如果判别运算式是假(False)的话,则做运算式2的运算.

  范例:

   $price=($age>60)? 100:200;
   如果$age大于60的话,则$price等于100,否则$price等于200.


  常用的文件数据(File test)运算符

  范例 说明

   -r $file 如果$file是可读取的话,返回1的值
   -w $file 如果$file是可写入的话,返回1的值
   -x $file 如果$file是可执行的话,返回1的值
   -e $file 如果$file存在的话,返回1的值
   -o $file 如果$file是被执行才所拥有的话,返回1的值
   -s $file 返回$file的文件大小(bytes)
   -f $file 如果$file是正常文件的话,返回1的值
   -T $file 如果$file是文本文件的话,返回1的值
   -B $file 如果$file是Binary文件的话,返回1的值
   -M $file 返回$file文件最后一次更改时间到现在的日期数

bcde544 发表于 2008-8-6 03:45

几刷书是好东西啊!~~

*** 作者被禁止或删除 内容自动屏蔽 ***

cqlove 发表于 2008-8-22 14:11

[url=http://www.cqpages.com.cn/1/]党政、国家机关、社会团体[/url][url=http://www.cqpages.com.cn/2/]人民政府[/url][url=http://www.cqpages.com.cn/3/]街道办事处[/url][url=http://www.cqpages.com.cn/4/]公安/消防/拯救[/url][url=http://www.cqpages.com.cn/5/]司法/法院[/url][url=http://www.cqpages.com.cn/6/]税务/工商[/url][url=http://www.cqpages.com.cn/7/]海关/口岸/边检[/url][url=http://www.cqpages.com.cn/8/]政协/民主党派[/url][url=http://www.cqpages.com.cn/9/]协会[/url][url=http://www.cqpages.com.cn/10/]新闻、出版、科研、教育[/url][url=http://www.cqpages.com.cn/11/]通讯社/记者站[/url][url=http://www.cqpages.com.cn/12/]报纸[/url][url=http://www.cqpages.com.cn/13/]电视/广播/电影[/url][url=http://www.cqpages.com.cn/14/]图书/音像[/url][url=http://www.cqpages.com.cn/15/]气象/地质[/url][url=http://www.cqpages.com.cn/16/]技术/质量[/url][url=http://www.cqpages.com.cn/17/]学校[/url][url=http://www.cqpages.com.cn/18/]成人教育[/url][url=http://www.cqpages.com.cn/19/]招生/考核[/url][url=http://www.cqpages.com.cn/20/]旅游、餐饮、娱乐、休闲、购物[/url][url=http://www.cqpages.com.cn/21/]旅行社/导游[/url][url=http://www.cqpages.com.cn/22/]宾馆/酒店[/url][url=http://www.cqpages.com.cn/23/]公园/动物园[/url][url=http://www.cqpages.com.cn/24/]夜总会/KTV[/url][url=http://www.cqpages.com.cn/25/]酒吧/咖啡厅[/url][url=http://www.cqpages.com.cn/26/]网吧[/url][url=http://www.cqpages.com.cn/27/]体育场馆[/url][url=http://www.cqpages.com.cn/28/]宠物[/url][url=http://www.cqpages.com.cn/29/]玩具[/url][url=http://www.cqpages.com.cn/30/]商场[/url][url=http://www.cqpages.com.cn/31/]日常服务[/url][url=http://www.cqpages.com.cn/32/]水/电/煤/气[/url][url=http://www.cqpages.com.cn/33/]修理[/url][url=http://www.cqpages.com.cn/34/]摄影/录像[/url][url=http://www.cqpages.com.cn/35/]鲜花[/url][url=http://www.cqpages.com.cn/36/]婚纱摄影[/url][url=http://www.cqpages.com.cn/37/]美发/美容[/url][url=http://www.cqpages.com.cn/38/]订票/票务[/url][url=http://www.cqpages.com.cn/39/]打字/复印[/url][url=http://www.cqpages.com.cn/40/]家教/家政/护理[/url][url=http://www.cqpages.com.cn/41/]家俱、生活用品、食品[/url][url=http://www.cqpages.com.cn/42/]家具[/url][url=http://www.cqpages.com.cn/43/]床上用品/布艺[/url][url=http://www.cqpages.com.cn/44/]日用品[/url][url=http://www.cqpages.com.cn/45/]家用电器[/url][url=http://www.cqpages.com.cn/46/]冰箱/空调[/url][url=http://www.cqpages.com.cn/47/]钟表/眼镜[/url] [url=http://www.cqpages.com.cn/48/]食品/蜜饯/凉果[/url][url=http://www.cqpages.com.cn/49/]蛋糕/面包[/url][url=http://www.cqpages.com.cn/50/]烟/糖/酒[/url][url=http://www.cqpages.com.cn/51/]工艺品、礼品、收藏[/url][url=http://www.cqpages.com.cn/52/]工艺品[/url][url=http://www.cqpages.com.cn/53/]抽纱绣品/工艺编织[/url][url=http://www.cqpages.com.cn/54/]首饰/宝石/玉器[/url][url=http://www.cqpages.com.cn/55/]礼品[/url][url=http://www.cqpages.com.cn/56/]古董/字画/收藏品[/url][url=http://www.cqpages.com.cn/57/]邮票/钱币[/url][url=http://www.cqpages.com.cn/58/]气球/旗篷[/url][url=http://www.cqpages.com.cn/59/]奖状[/url][url=http://www.cqpages.com.cn/60/]医疗保健、社会福利[/url][url=http://www.cqpages.com.cn/61/]医院[/url][url=http://www.cqpages.com.cn/62/]妇幼保健[/url][url=http://www.cqpages.com.cn/63/]疗\休\养院[/url][url=http://www.cqpages.com.cn/64/]急救中心[/url][url=http://www.cqpages.com.cn/65/]血库/血站[/url][url=http://www.cqpages.com.cn/66/]卫生/防疫[/url][url=http://www.cqpages.com.cn/67/]心理咨询[/url][url=http://www.cqpages.com.cn/68/]戒毒[/url][url=http://www.cqpages.com.cn/69/]保健食品[/url][url=http://www.cqpages.com.cn/70/]药品商店[/url][url=http://www.cqpages.com.cn/71/]金融、保险、证券、投资[/url][url=http://www.cqpages.com.cn/72/]银行[/url][url=http://www.cqpages.com.cn/73/]金融监管[/url][url=http://www.cqpages.com.cn/74/]财务[/url][url=http://www.cqpages.com.cn/75/]保险[/url][url=http://www.cqpages.com.cn/76/]证券期货[/url][url=http://www.cqpages.com.cn/77/]信托投资[/url][url=http://www.cqpages.com.cn/78/]抵押/担保/典当/拍卖[/url][url=http://www.cqpages.com.cn/79/]开发区[/url][url=http://www.cqpages.com.cn/80/]外事服务/国际劳务[/url][url=http://www.cqpages.com.cn/81/]广告、会展、商务、办公、咨询[/url][url=http://www.cqpages.com.cn/82/]广告[/url][url=http://www.cqpages.com.cn/83/]商业摄影[/url][url=http://www.cqpages.com.cn/84/]灯箱/招牌/霓虹灯[/url][url=http://www.cqpages.com.cn/85/]会展服务/展示[/url][url=http://www.cqpages.com.cn/86/]公关/礼仪[/url][url=http://www.cqpages.com.cn/87/]集团公司[/url][url=http://www.cqpages.com.cn/88/]招商/投资[/url][url=http://www.cqpages.com.cn/89/]律师/法律[/url][url=http://www.cqpages.com.cn/90/]人才[/url][url=http://www.cqpages.com.cn/91/]通信、邮政、电脑、网络[/url][url=http://www.cqpages.com.cn/92/]电信[/url][url=http://www.cqpages.com.cn/93/]通信设备[/url][url=http://www.cqpages.com.cn/94/]邮政/邮政储汇[/url][url=http://www.cqpages.com.cn/95/]电脑[/url][url=http://www.cqpages.com.cn/96/]电脑配件[/url][url=http://www.cqpages.com.cn/97/]网络[/url][url=http://www.cqpages.com.cn/98/]互联网[/url][url=http://www.cqpages.com.cn/99/]电子商务[/url][url=http://www.cqpages.com.cn/100/]病毒防护[/url][url=http://www.cqpages.com.cn/101/]软件[/url][url=http://www.cqpages.com.cn/102/]数码产品[/url][url=http://www.cqpages.com.cn/103/]交通、运输、物流[/url][url=http://www.cqpages.com.cn/104/]公共交通/出租车[/url][url=http://www.cqpages.com.cn/105/]加油站/停车场/拖车[/url][url=http://www.cqpages.com.cn/106/]客运[/url][url=http://www.cqpages.com.cn/107/]货运[/url][url=http://www.cqpages.com.cn/108/]车票/机票[/url][url=http://www.cqpages.com.cn/109/]车站/机场[/url][url=http://www.cqpages.com.cn/110/]国际货运/报关[/url][url=http://www.cqpages.com.cn/111/]快递/速递[/url][url=http://www.cqpages.com.cn/112/]城建、房产、建筑、建材[/url][url=http://www.cqpages.com.cn/113/]城建/市政[/url][url=http://www.cqpages.com.cn/114/]消防/保安[/url][url=http://www.cqpages.com.cn/115/]房地产[/url][url=http://www.cqpages.com.cn/116/]建筑安装[/url][url=http://www.cqpages.com.cn/117/]装修设计[/url] [url=http://www.cqpages.com.cn/118/]建筑/装饰材料[/url][url=http://www.cqpages.com.cn/119/]电工材料[/url][url=http://www.cqpages.com.cn/120/]水暖[/url][url=http://www.cqpages.com.cn/121/]门窗[/url][url=http://www.cqpages.com.cn/122/]卫生洁具[/url][url=http://www.cqpages.com.cn/123/]贸易、批发、市场[/url][url=http://www.cqpages.com.cn/124/]国内贸易/工贸/商贸[/url][url=http://www.cqpages.com.cn/125/]进出品贸易[/url][url=http://www.cqpages.com.cn/126/]贸易经纪/代理[/url][url=http://www.cqpages.com.cn/127/]产权经纪/交易[/url][url=http://www.cqpages.com.cn/128/]拍卖[/url][url=http://www.cqpages.com.cn/129/]物资供销[/url][url=http://www.cqpages.com.cn/130/]批发业[/url][url=http://www.cqpages.com.cn/131/]市场[/url][url=http://www.cqpages.com.cn/132/]纺织、皮革、服装、鞋帽[/url][url=http://www.cqpages.com.cn/133/]纺织[/url][url=http://www.cqpages.com.cn/134/]染整/印染[/url][url=http://www.cqpages.com.cn/135/]剌绣/抽纱[/url][url=http://www.cqpages.com.cn/136/]皮革制品[/url][url=http://www.cqpages.com.cn/137/]箱包/手袋[/url][url=http://www.cqpages.com.cn/138/]服装[/url][url=http://www.cqpages.com.cn/139/]婚纱/礼服[/url][url=http://www.cqpages.com.cn/140/]毛衫[/url][url=http://www.cqpages.com.cn/141/]制服/裤业[/url][url=http://www.cqpages.com.cn/142/]制鞋业[/url][url=http://www.cqpages.com.cn/143/]制帽业[/url][url=http://www.cqpages.com.cn/144/]造纸、纸品、印刷、包装[/url][url=http://www.cqpages.com.cn/145/]造纸[/url][url=http://www.cqpages.com.cn/146/]纸板[/url][url=http://www.cqpages.com.cn/147/]纸品[/url][url=http://www.cqpages.com.cn/148/]纸箱/纸盒[/url][url=http://www.cqpages.com.cn/149/]印刷业[/url][url=http://www.cqpages.com.cn/150/]制版[/url][url=http://www.cqpages.com.cn/151/]装订[/url][url=http://www.cqpages.com.cn/152/]印刷[/url]

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.