perl: 控制结构

Perl结构控制语句:

 

if条件语句:

if    (condition) {

    expression;

}    elsif   {

    expression;

} else {

    expression;

}

 

unless条件语句:

条件为假时执行.

unless (condition) {

    expression;

}    elsif   {

    expression;

} else {

    expression;

}

 

while循环语句:

while    (condition){

    expression;

}

 

while(1) {

    …

}   #死循环

 

until循环语句:

条件为假时才执行

until  (condition) {

    expression;

}

 

foreach循环语句:

foreach    $var   (@arry/list){

    expression;

}

$var循环变量并不是对列表元素的复制,而是列表元素本身。

如果在foreach体中修改了循环变量也就是修改了列表中的元素。

$var循环变量在退出foreach循环后恢复原来的值。

 

循环变量可以省略,默认使用   $_   来代替:

foreach     (@arry/list){

    print  “$_”;

}

 

for循环语句:

perl里的for和foreach等价,可以根据条件相互转化。

for  (initialization; condition; increment) {

    expression;

}

 

for(;;) {

    …

}    #死循环

 

裸块:

{

    expression;

}

 

last函数 :跳出循环,相当于c的break。

last    LABEL/EXPR

 

next函数:跳出本次循环,继续下一次循环,相当于c的continue。

next  LABEL/EXPR

 

redo函数:无条件跳转到本次循环的顶端,重新执行本次循环。

redo  LABEL/EXPR

 

given-when控制结构:

given($var) {

    when (condition) { expression }

    …

    default   { expression }

}

 

多个项目的when匹配:

foreach (@arr) {

    when (condition) { expression; continue }

    …

    default { expression}

}

 

break:  跳出given块

 

continue:继续执行下一句

 

条件修饰词:

dosomething    if  condition;

也可以写成:

dosomething

    if  condition;

 

循环里的标签:

在for/while等循环关键字前面加上标签可以实现跳转。

标签用大写,可以是字母数字和下滑线,但是不能数字开头。

 

eval    EXPR/BLOCK: 捕获错误

特殊变量$@存放错误信息,如果没有触发异常$@为空。

eval    {

    ….

}

if ($@_)  {

    print “An error occurred ($@),continuing\n”;

}

 

evalbytes

goto

return

exit

do

wantarray

dump

caller

"__FILE”,"__LINE__","__PACKAGE__", "__SUB__"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值