perl-基礎

一、Perl 語法入門:

 一、print 語句:

print "Hello, world\n";
print("Hello, world\n");

二、引號:

 Perl雙引號和單引號的區別: 雙引號能夠正常解析一些轉義字符與變量,而單引號沒法解析會原樣輸出。

三、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;

三、perl流程控制:

  一、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);   }

四、perl函數及子程序:

# 函數定義
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 語句,則子程序的最後一行語句將做爲返回值。

相關文章
相關標籤/搜索