top
Loading...
Perl的變量介紹
  Perl有三種變量:純變量(Scalar Varible)、數組(Array)、關聯數組(Associative array),下面是變量
的語法:
一、純量變量(Scalar Variables)
使用純量變量時要在前面加上$符號,注意:指定的純量變量是一個字符的話,就要加上""雙引號;如果是數值的
話,就不用加上""這個符號.
示例
$url1="www.nease.net";        #將www.nease.net/~peishan這串字符賦給$url變量;
$url2="/~peishan";          #將/~peishan這個字符賦給$url2變量;
$url3=$url1.$url2;          #將兩個變量的字符串連起,$url3="www.nease.net/~peishan";
$int=10;               #將10賦給$int變量;
$int=5+6;              #$int=11;
$int=5*6;              #$int=30;
$int=10;$int++;           #$int=11;
$int=10;$int+=8;           #$int=18;
數組
  使用數組時要在前而@符號,下面是一些例子:
@username1=("mike","fly");       #將mike和fly兩個字符串賦給@username1
@username2=@username1;         #這時@username2=("mike","fly")
@username3=("duan",@username);     #這時@username3=("duan","mike","fly")
($one,@username4)=@username3;      #這時$one="duan"
@username=();              #把@username1清空

@int=(1,3,5,7,9);
$x=@int;                #將一個數組賦給$x純變量,且返回數組個數,這個$x=5
$x=$#int;                #$#這個變量返回數組最后個數的值(index)$x=4
($x)=@int;               #$x等于數組的第一個個數值$x=1
$b=$int[0];               #$b等于數組的第一個無素值$b=1
$c=@int[0];               #$c同上$c=1,因些呼叫數組中值有兩種方法
$int[0]=2;               #將2這個數值賦給數組@int的第一個元素@int=(2,3,5,7,9)
$int[0,1]=[1,3];            #將1賦給數組的第一個元素將3賦給數組第二個元素@int=(1,3,5,7,9)
@int[0,1]=@int[1,0];          #將數組前兩個元素交換@int(3,1,5,7,9)
($int[0],$int[1])=($int[1],$int[0]);  #同上@int=(1,3,5,7,9)
@data=@int[0,1];            #date=(1,3)
$int[5]=11;               #將11賦給數組中第六個元素@int=(1,3,5,7,9,11)
關聯數組
  關聯數組是由不同的純變量組成。跟數組不同之處是在關聯數中的單元是由成對的key-value組成,每一對
key都有相對應的值(value),這是Perl語言中特有的,關聯數組是一個功能強大的數組。
   使用關聯數組時要在前面加上%號,關聯數組的格式如:
   %ARRAY=(key1,value1,key2,value2,key3,value3);
   每一個key都有一個相對應的值(value)。
   1.在關聯數組中增加、更改一對數據:
   ARRAY={key}=value;
   在關聯數組ARRAY中加上一對key-value,要在關聯數組名稱前加上$號,而且key的名稱要在{}符號之間,
最后再指定key所對應的value值。如果在這個關聯數組中已經有這個key了.就會更改這個key所對應的value。
   2.取出關聯數組中key所對應的value:
   $get=$ARRAY{key};
   取出在關聯數組ARRAY中key所對應的value,要先在關聯數組名稱前加上$這個符號而且key的名稱要在{}
符號之間,就會將key所對應的value取出來并指定給$get這個變量。
   3.刪除一對在關聯數組中的數據:
   delete $ARRAY{key};
   delete是Perl所提供的函數,作用是刪除關聯數組中的一個key以及這個key所對應的value。使用方法是
在delete函數之后,指定關聯數組中要刪除的key名稱.
   下面是有關于一些關聯數組的例子:
%name=(1,"one",2,"two");
$one=$name{1};           #$ONE等于"ONE"
$two=$name{2};           #$TWO等于"TWO"
$name{3}="third";          #增加一對KEY-VALUE到關聯數組NAME中這時%NAME=(1,"ONE",2,"TWO"
                  #3,"THIRD");
$name{3}="three";          #因為在關聯數組中已經有3個KEY了,所以就會把KEY為3所對應的VAL-
                  #UE更改成THREE 這時%NAME=(1,"ONE",2,"TWO"3,"THREE");
delete $name{3};          #將關聯數組中key值為3的一對key-value刪除,這時%NAME=(1,"ONE"
                  #,2,"TWO");
@x=%name;              #將關聯數組NAME指定給數組X,這時@x=(1,"ONE",2,"TWO");
%y=@x;               #將數組X指定給關聯數組Y 這時%Y=(1,"ONE",2,"TWO");
%name=()              #把%name關聯數組置空.
                        (完)
北斗有巢氏 有巢氏北斗