print "Hello, world\n"; print("Hello, world\n");
Perl雙引號和單引號的區別: 雙引號能夠正常解析一些轉義字符與變量,而單引號沒法解析會原樣輸出。
一、標量:$myfirst=123;編程
二、數組:@arr=(1,2,3);數組
@names = ('google', 'runoob', 'taobao'); @copy = @names; # 複製數組 $size = @names; # 數組賦值給標量,返回數組元素個數 push(@sites, "baidu"); # 在數組結尾添加一個元素 unshift(@sites, "weibo"); # 在數組開頭添加一個元素 pop(@sites); # 刪除數組末尾的元素 shift(@sites);# 移除數組開頭的元素
# 用split()方法將字符串轉爲數組
@string = split('-', $var_string);
# 用join()方法將數組轉爲字符串
$string1 = join( '-', @string );
三、散列:%h=('a'=>1,'b'=>2);編程語言
%data = ('google', 45, 'runoob', 30, 'taobao', 40); print "\$data{'google'} = $data{'google'}\n";
$size = @keys; # 賦值給標量,返回元素個數
使用 keys 函數讀取哈希全部的鍵:keys %HASH
%data = ('google'=>'google.com', 'runoob'=>'runoob.com', 'taobao'=>'taobao.com');
@names = keys %data;
使用 values 函數來讀取哈希全部的值:values %HASH
%data = ('google'=>'google.com', 'runoob'=>'runoob.com', 'taobao'=>'taobao.com');
@urls = values %data;
一、if語句:函數
$a = 100; # 使用 == 判斷兩個數是否相等 if( $a == 20 ){ # 條件爲 true 時執行 printf "a 的值爲 20\n"; }elsif( $a == 30 ){ # 條件爲 true 時執行 printf "a 的值爲 30\n"; }else{ # 以上全部的條件爲 false 時執行 printf "a 的值爲 $a\n"; }
二、case語句:google
use Switch; $var = 10; @array = (10, 20, 30); %hash = ('key1' => 10, 'key2' => 20); switch($var){ case 10 { print "數字 10\n" } case "a" { print "字符串 a" } case [1..10,42] { print "數字在列表中" } case (\@array) { print "數字在數組中" } case (\%hash) { print "在哈希中" } else { print "沒有匹配的條件" } }
二、for語句:url
# 執行 for 循環 for( $a = 0; $a < 10; $a = $a + 1 ){ print "a 的值爲: $a\n"; }
三、foreach語句:spa
@list = (2, 12, 36, 42, 51); # 執行foreach 循環 foreach $a (@list){ print "a 的值爲: $a\n"; }
last 語句用於退出循環語句塊;scala
continue 塊一般在條件語句再次判斷前執行。code
foreach $a (@listA){ statement(s); }continue{ statement(s); }
# 函數定義 sub Hello{ print "Hello, World!\n"; } # 函數調用 Hello();
一、perl 函數傳參:blog
Perl 子程序能夠和其餘編程同樣接受多個參數,子程序參數使用特殊數組 @_ 標明。
所以子程序第一個參數爲 $_[0], 第二個參數爲 $_[1], 以此類推。
不論參數是標量型仍是數組型的,用戶把參數傳給子程序時,perl默認按引用的方式調用它們。
# 定義求平均值函數 sub Average{ # 獲取全部傳入的參數 $n = scalar(@_); $sum = 0; foreach $item (@_){ $sum += $item; } $average = $sum / $n; print '傳入的參數爲 : ',"@_\n"; # 打印整個數組 print "第一個參數值爲 : $_[0]\n"; # 打印第一個參數 print "傳入參數的平均值爲 : $average\n"; # 打印平均值 } # 調用函數 Average(10, 20, 30);
子程序能夠向其餘編程語言同樣使用 return 語句來返回函數值。
若是沒有使用 return 語句,則子程序的最後一行語句將做爲返回值。