PERL簡記

記下一點文字,爲自己曾經所學留一點點痕跡。

 

 

PERL很強大,支持多平臺,,,&%$^&*(&^%。

現在使用的基本是都是版本5。

很簡單易學的:

 

主要內容安排如下:

一,PERL的基本知識

  •      看看官方文章,寫寫Hello Perl,基本就可以開始學習了。
  •      PERL的變量  
        1.  $ 單變量:聲明,賦值
        2. @數組變量  :聲明,空,數字,字符串,混合,賦值,指定某幾個元素賦值;
        3. $"數組輸出特殊分隔符號變量:輸出分隔符
        4. %哈希變量:
  • PERL的操作符號
      1. 加、減、乖、除、模、冪、加加、減減
      2. AND(&&)、OR(||)、NOT(!)
      3. 二進制的 與&、或|、非!、與或^、與非、左移<<、右移>>
      4. 數字關係符號:等於==、不等於!=、大於、小於、大於等於、小於等於、比較<=>返回1(左大右),0(左等右),-1(左小右)
      5. 字符串也能比較:大於gt、小於lt、大於等於ge、小於等於le、比較cmp 返回1(左大右),0(左等右),-1(左小右)
      6. 條件取值:   CONDITION-PART ? TRUE-PART : FALSE-PART
      7. 字符串符號:連接符號點(.)、重複串符號x(x) 後面跟數字表示重複的次數。
      8. 範圍符號:二個點(..),二點左右的可以是數字,也可以是字符。
# "$"符號表示單變量
#var Number and String
print "demo of  Number and String   ";
$number = 20;
$str = "Real Number is  "  ;
print ("$str $number .\n");


# "@”符號表示數組變量
# " $" "符號是特殊變量
# var Array
print "demo of  Array   ";
$line = 0;

@emptyArray = ();          #表示空數組
@numberArray = (1..15);   #表示1到15的數字,可以連續的二個點代替中間的數字,三個點也行
@stringArray = ("string1\,","string2\,","string3\.");  #表示字符串數組
@mixedArray =("stringy\,","stringx\,",3,5);   #表示混合的數組
print "here is and empty array:".@emptyArry. "nothing here. \n";
print ("Print array in single line @numberArray"); print "\n";
$" = ",";                   #如果輸出數組中間的符號想變化一下,用 $" 進行設置
print ("@numberArray"); print "\n";

foreach (@numberArray){
 print ($numberArray[$line]);       #使用數組時,"$"符號代替"@"符號
 print "\n";
 $line = $line +1 ;
};

# "%"符號表示哈希變量
%ages = ('zhao' => 28,
         'qian' => 35,
         'sun' => 29,
         'li' =>99,);
print ( uc(li).. " is $ages{li} years old\n");

 

 

  • 函數
      1. 函數聲明:sub 函數名
      2. 函數變量:sub 函數名(變量)
      3. 函數變量賦值:$_[序號]
      4. 函數變量計數:變量 = @_
      5. 函數調用: 函數名(變量)
      6. 函數返回:return
      7. 常用字符串函數:
      8. 常用字符串函數:變大寫UC(uppercase)、大寫首字母Ucfirst、小寫lc(lowercase)、小寫首字母lcfirst、字符串長度length(str)、切分split(pattern,str,limit)、子串substr(原串,返回起始位置)、返回匹配的最後一個位置rindex(原串,匹配串) 
      9. 常用數組函數:刪除delete(key)、exists(key)、連成串 join(str,array)返回一個符串、pop(array)、排序sort等。
  • 語句與控制語句
  1. 語句塊一般以{ }作爲開始和結束。當然,一個聲明也可以是一個語句塊。
  2. 控制語句與其它語言差不太多,下面分了不同控制語句進行了示例。 
# 語句和控制語句示例

# if語句示例

$a = 1;
$b = 12;
$c = 12;
if($a == $b){
print ("a == b : $a == $b" );
print "\n";
}elsif($a == $c){  #小心,此處的"elsif"不是字符串ELSE 和IF
print ("a == c : $a == $c" );
print "\n";
}else {
print ("a != b : $a != $b");
print "\n";
}


# while語句示例

 do{
 print("a = $a \n");
 $a++;
 } while ($a <=$b);

 $a = 1;
 while($a <= $b){
 print("a = $a \n");
 $a++;
 }continue {
 print ("after while continue.");
 }
 ;

# until語句示例
$a = 5;
   do{
 print("a = $a \n");
 $a++;
 } until ($a <=$b);

# for 語句示例
 $a = 5;
 for ($a=5;$a<$b;$a++){
 print("a = $a \n");
 };

# foreach語句示例
@arrayA = ("A","B","C","I");
$a =0;
foreach(@arrayA){
print ("array element$a value is $arrayA[$a] .\n");
$a ++;
}


# last語句示例
print ("DEMO of last .\n");
@arrayA = ("A","B","C","I");
$a =0;
foreach(@arrayA){
if($arrayA[$a]eq "B"){
print ("array element$a value is $arrayA[$a] .\n");
last;
}
$a ++;
print("after last. \n");
}
print("exit from block. \n");

# next語句示例
print ("DEMO of next .\n");
@arrayA = ("A","B","C","I");
$a =0;
foreach(@arrayA){
if($arrayA[$a] eq "B"){
print ("array element$a value is $arrayA[$a] .\n");
$a ++;
next;
}else {
print ("array element$a value is $arrayA[$a] .\n");
$a ++;
}
};

# redo 語句示例
 print("What is your name? \n");
 $name = <STDIN>;      #標準輸入,從鍵盤。
 chop($name);
 if (! length($name)) {
 print("Msg: Zero length input. Please type your name .\n");
 redo;           #重新執行當前語句塊
 }
 print("Thank you, " . uc($name) . "\n");

# goto 語句示例
 #基本不用,不浪費時間寫示例了。

 

 

 

  • 指針ref

 

  • 使用文件資源

 文件操作比較簡單,主要有:

  1. 打開文件:open、sysopen(與open模式相當,只是以文字方式進行文字模式的打開模式授權)
  2. 關閉文件:close
  3. 刪除文件:unlink
  4. 重命名文件:rename
  5. 打開方式:
    > or w		Creates, Writes, and Truncates
    >> or a		Writes, Appends, and Creates
    +< or r+	Reads and Writes
    +> or w+	Reads, Writes, Creates, and Truncates
    +>> or a+	Reads, Writes, Appends, and Creates
     
  6. 目錄操作:創建目錄mkdir、刪除目錄rmdir、改變目錄chdir等
    opendir DIRHANDLE, EXPR  # To open a directory
    readdir DIRHANDLE        # To read a directory
    rewinddir DIRHANDLE      # Positioning pointer to the begining
    telldir DIRHANDLE        # Returns current position of the dir
    seekdir DIRHANDLE, POS   # Pointing pointer to POS inside dir
    closedir DIRHANDLE       # Closing a directory.
     

 

  • 正則表達式

 

  • 特殊變量

 

  • 異常控制

 

  • 面向對象
  • PERL模塊庫
  • 如何DEBUG
  • PERL的常用命令行
  • PERL與網絡編程
  1. Socket、Mail、Ftp、Http、NNTP (新聞相)
  • 什麼是CGI(Common Gateway Interface)
  • 表單處理(HTML)
  • PERL開發Web Service
  • 有哪些好的網絡資源

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章