Perl语法 Perl运算符简介
1.Perl运算符
1.1 算数运算符
Perl固然在变量与数据范例都和C大不不异,然而它的运算符和C险些不异,除了C的范例转换运算符type,指针引用运算符*ptr和布局成员选择符,其他C的运算符险些完全呈现在Perl里,Perl新增了几个新运算符,好比在字符处置方面.
◆Perl到今朝撑持的算数运算符有一些几种:
+加法运算符
-减法运算符
*乘运算符
/除运算符(只对浮点数运算)
%取模运算符(只对整数运算)
下面给出Perl算数运算的一些实例:
$x=2.5;
$y=3;
print($x+2*$y);
print(7/$y);
printint(7/$y);
print(7%$y);
print(7.5%$y);
Perl还撑持递增和递减运算符:
++递加
--递减
◆Perl新增了乘方运算符:**,请看下面的例子:
$x=2**3;#2的3次方
$y=2**0.5;#2的平方根
$z=-2**-3;#成果是:-0.125
1.2 Perl语法之位运算符
位运算符对二进制表达式的整数情势举行处置,运算成果为整数.若是位运算符的操纵数是字符串或分数,Perl起首把它们转换成整数,并用32位长整数情势暗示它们.Perl撑持全部的C说话运算符:
|位或运算符
&位与运算符
.位非运算符
<<位左移运算符位右移运算符
有关位运算符的具体内容,请参看C说话有关的内容,这里我们就未几讲了,只举几个例子:
$x=5;
$y=3;
print$x|$y;#成果是7(二进制暗示:111)
print$x&$y;#成果是1(二进制暗示:001)
print$x<<2;#成果是20(二进制暗示:10100)print$x1;#成果是2(二进制暗示:10)
1.3Perl语法之比力运算符
比力运算符的功效是比力两个操纵数的值.Perl在举行比力运算前,会先将字符操纵数转换为数字.Perl用专门的字符串比力运算符对纯字符举行表运算.
1.4Perl语法之逻辑运算符
逻辑运算符测试布尔表达式的值,其成果为真或假.Perl以为逻辑运算符的每个操纵数都为布尔值(即真或假).Perl的逻辑运算符包罗:
||逻辑或运算符;
&&逻辑与运算符.
Perl按从左到右的挨次计较逻辑表达式.当逻辑或运算符的一个操纵数为真,大概当逻辑与运算符的一个操纵数为假时,Perl将停止逻辑表达式的计较.Perl操纵这种短回路计值快速计较表达式的值.是以,这两个运算符也叫短回路AND和短回路OR.
除了以上两个运算符,另有以下三种逻辑运算符:
!负运算符
?:前提运算符
,挨次计值符
运算符!否认操纵数的布尔值,相称于逻辑非.?:前提运算符,有3个操纵数,表达情势为:condition?true-result:false-result
下面的语句经由过程?:运算符,实现拜候权限的区分:
$access=($usereq'流云'?'root':'guest');
挨次运算符(,)从严酷意义上讲并不是逻辑运算符,由于它并不查抄操纵数的真假.Perl从左到右的计较逗号运算符,并返回最右边的操纵数,都好运算符是从C连续出来的,详细利用可以参考C里的用法,这里我就不累述了.
1.5Perl语法之字符运算符
因为Perl自己是为文本处置开辟的.是以,它增添很多新的字符串运算符.Perl的字符串运算符包罗:
.字符毗连运算符
x字符串复制运算符
=~将一个变量绑定到模式立室
!~将一个变量绑定到模式立室,取非
前两个运算符比力简略.此刻看看例子:print'C'.'a'.'l'x2;#输出成果将是:Call;
后两个运算符首要用于模式立室,今后将会有关于模式立室的详细解说,这里就未几说了,我们来看看它们的例子,以领会它们的感化:
$text='本日下雨了';
print($text=~/下雨/)?'本日下雨了':'本日没下雨';
我们看到的例子可以发明是否变量中是否包罗我们所必要的字符串.
1.6Perl语法之赋值运算符
赋值运算符和C说话的赋值运算符差未几,以下是各类赋值运算符:
=+=-=*=/=%=|=&=
^=~=<<==**==.=x=
1.7Perl语法之Lvalue
在Perl和C说话中,lvalue暗示赋值运算符左边的实体.也便是说,lvalue与变量一样,可以给它分派值.比方在Perl号令文件中不克不及向字符串赋值,如"Bob"=32这个语句便是错误的!由于"Bob"不是一个lvalue,可是若是对$Bob赋值,如$Bob=32,这个语句便是准确的!由于变量$Bob是一个lvalue.
在Perl中,任何故意义的lvalue只能暗示一个实体.比方下面的第一个语句列出了表的值(便是数组的值,只不外说法纷歧样而已),@color便是一个lvalue,第二个语句中,将表的值赋值给3个标量变量,3个变量便是lvalue:
@color=($r,$g,$b);
($r,$g,$b)=@color;
Perl的赋值运算符对表举行处置时,可以不合错误整个表举行处置,而只针对表的某一个大概几个元素举行赋值:
@times[2,5,9]=(20,40,10);
下面的语句把表的前2个值赋给两个标量,别的部门赋给另一个表:
($arg1,$arg2,@reset)=@ARGV;
1.8Perl语法之表运算符
Perl包罗以下一些表运算符,而c没有:
,表机关符
..规模运算符
x表复制运算符
前面我们在先容"标量与数组变量"时,已经计划到了机关符(我以为叫分开符,更轻易明白些)规模运算符我们在用来建立数组下标规模时,也用到过!不外,请注重它的功效还远不止这个,它还可以用来作为返回从左边操纵数到右边操纵数之间挨次整数的规模(包罗摆布双方的操纵数).号令文件凡是同时操纵规模运算符缔造一个持续整数表:@digits=0..9;
如许我们就缔造了一个表,其值为(0,1,2,3,4,5,6,7,8,9)
表复制运算符是一个很是风趣的东东,我们来看一个例子:@copy_3=(1,2,3)x3;这个表有9元素,其值为(1,2,3,1,2,3,1,2,3)怎么样?很便利吧!
1.9Perl语法之文件运算符
Perl大大扩展了文件处置运算符.Perl至少有27个运算符在不打开文件的环境下,可以或许测试文件的信息,可是很不幸,因为Perl在最初是UNIX的东西,以是绝大大都的运算符在我们风行的平台上:WIN9X/NT体系无法利用.但万幸的是不是全数另有4个运算符绝对可用,并且功效不错哦!一下便是那4个运算符:
-d测试文件是不是一个目次;
-e测试文件是否存在;
-s测试文件的巨细;
-w测试文件是否是可写的;
前两个运算符返回的是布尔值(即真或假),第3个运算符返回文件的巨细(以字节作为返回体例).下面是
利用方式:
复制代码 代码如下:
if(-e'Perl.exe')
{
print'Filesizeis:'-s'Perl.exe';
}
else
{
print'Can\'tfindPerl.exe\n';
}
(-w'SomeFile')||die"CannotwritetoSomeFile\n";
Perl运算符
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新动态
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]