主頁 > 知識庫 > Perl中的特殊符號介紹

Perl中的特殊符號介紹

熱門標(biāo)簽:企業(yè)做大做強(qiáng) 客戶服務(wù) Win7旗艦版 語音系統(tǒng) 硅谷的囚徒呼叫中心 呼叫中心市場需求 百度AI接口 電話運(yùn)營中心

$_  

俗稱perl的老地方,當(dāng)你的程序中未告知使用哪個(gè)參數(shù)或者變量時(shí),perl就會自動使用$_中的值,比如

for(1..10){
  print ;
}

這里print沒有指定參數(shù),所以它就會使用$_,那$_里面是什么呢?每次循環(huán)$_的值都會變化,所以$_實(shí)際上就是1 .. 10這10個(gè)值,所以上面的代碼打印的結(jié)果就是12345678910

$!

當(dāng)且僅當(dāng)某個(gè)函數(shù)調(diào)用失敗時(shí)才會設(shè)置該變量,所以經(jīng)常這樣使用這個(gè)變量

open FILE,"d:/code/zdd.txt" or die $! ;

$/

這是perl中的行分隔符,默認(rèn)是換行符,可以改變這個(gè)變量以便一次讀入整個(gè)文件,如下

sub test{
  open FILE,"d:/code/zdd.txt" or die $! ;
  my$olds= $/ ;
  local $/=undef ;
  my$slurp=FILE> ;
  print$slurp,"\n" ;
  $/=$olds ;
}

$`

正則表達(dá)式匹配變量,代表匹配位置之前的內(nèi)容

$  

正則表達(dá)式匹配變量,代表匹配的內(nèi)容

$' 

正則表達(dá)式匹配變量,代表匹配位置之后的內(nèi)容

來看一個(gè)例子,解析xml文件,有如下xml文件,我想獲得Code節(jié)點(diǎn)的值

?xml version='1.0' encoding='UTF-8'?>
Code>200/Code>
用下面的perl代碼來解析

my$str="Code>200/Code>" ;
if($str=~/(?=Code>)(\d+)(?=\/Code>)/){
  print"string before matched: $`","\n" ;
  print"matched string: $","\n" ;
  print"string after matched: $'","\n" ;
}

運(yùn)行結(jié)果是

string before matched: Code>
matched string: 200
string after matched: /Code>

其中$`對應(yīng)Code>,$對應(yīng)200,$'對應(yīng)/Code>

$|

控制對當(dāng)前選擇的輸出文件句柄的緩沖,例子待添加。

@_

傳給子程序的參數(shù)列表,通常一個(gè)子程序是這樣獲得傳給它的參數(shù)的。

sub add {
  my ($num1, $num2) = @_;
  return $num1 + $num2;
}

如果子程序只有一個(gè)參數(shù),也可以用shift來獲取,此時(shí),shift相當(dāng)于shift @_

sub square {
  my $num = shift ; # same as my $num = shift @_
  return $num * $num;
}

perl常見符號

=> 鍵值對,左鍵右值

-> 引用,相當(dāng)于java中的 【對象.方法名】中的點(diǎn)號

:: 表示調(diào)用類的一個(gè)方法

% 散列的標(biāo)志,定義一個(gè)鍵值對類型的

@ 數(shù)組的標(biāo)志

$ 標(biāo)量的標(biāo)志

=~ 匹配的標(biāo)志

!~ 不匹配的標(biāo)志

$! 根據(jù)上下文返回錯誤號或者錯誤串

您可能感興趣的文章:
  • 強(qiáng)大的Perl正則表達(dá)式實(shí)例詳解
  • Perl中的符號 ->;、=>; 和 :: 分別表示什么意思?
  • Perl中常見符號與操作
  • Perl時(shí)間處理函數(shù)用法介紹
  • Perl字符串處理函數(shù)大全
  • Perl字符串比較和整數(shù)比較的區(qū)別詳解
  • 詳解linux下批量替換文件內(nèi)容的三種方法(perl,sed,shell)
  • 使用Perl生成隨機(jī)密碼
  • Python和Perl繪制中國北京跑步地圖的方法
  • Perl5和Perl6對比使用Sigils的差別

標(biāo)簽:濟(jì)南 安康 山西 崇左 海南 長沙 山西 喀什

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Perl中的特殊符號介紹》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266