一、正則表達(dá)式特殊變量
1、$n :包含上次模式匹配的第n個(gè)子串 2、$& :前一次成功模式匹配的字符串 3、$` :前次匹配成功的子串之前的內(nèi)容 4、$' :前次匹配成功的子串之后的內(nèi)容 5、$+ :前一次使用括號(hào)的模式匹配的字符串.
二、文件句柄特殊變量
1、$| :如果設(shè)置為零,在每次調(diào)用函數(shù)write或print后,自動(dòng)調(diào)用函數(shù)fflush,將所寫內(nèi)容寫回文件 2、$% :當(dāng)前輸出頁號(hào) 3、$= :當(dāng)前每頁長度 4、$- :當(dāng)前頁剩余的行數(shù) 5、$~ :當(dāng)前報(bào)表輸出格式的名稱.默認(rèn)值是文件句柄名. 6、$^ :當(dāng)前報(bào)表輸出表頭格式的名稱.默認(rèn)值是帶后綴”_TOP”的文件句柄名.
三、全局特殊變量
1、$_和$ARG :默認(rèn)輸入和模式匹配內(nèi)容.如果不指定接收輸入的變量或執(zhí)行模式匹配的字符串 2、$.和$NR :前一次讀的文件句柄的當(dāng)前行號(hào) 3、$/和$RS :輸入記錄分隔符,默認(rèn)是新行字符.如用undef這個(gè)變量,將讀到文件結(jié)尾 4、$,的$OFS :輸出域分隔符. 5、$\和$ORS :輸出記錄分隔符 6、$: :斷行字符,默認(rèn)是”\n-”三個(gè)字符 7、$! :這個(gè)變量的數(shù)字值是errno的值,字符串值是對(duì)應(yīng)的系統(tǒng)錯(cuò)誤字符串 8、$@ :命令eval的錯(cuò)誤消息.如果為空,則表示上一次eval命令執(zhí)行成功 9、$$ :運(yùn)行當(dāng)前Perl腳本程序的進(jìn)程號(hào) 10、$< :當(dāng)前進(jìn)程的實(shí)際用戶號(hào) 11、$> :當(dāng)前進(jìn)程的有效用戶號(hào) 12、$( :當(dāng)前進(jìn)程的實(shí)際組用戶號(hào) 13、$) :當(dāng)前進(jìn)程的有效組用戶號(hào) 14、$[ :數(shù)組的數(shù)組第一個(gè)元素的下標(biāo),默認(rèn)是0 15、$] :Perl的版本號(hào) 16、$ARGV :當(dāng)使用”< >”讀文件時(shí),保存當(dāng)前文件名
四、全局特殊數(shù)組變量
1、@ARGV :保存命令行參數(shù) 2、@INC :保存查找Perl程序的目錄 3、@_ :在子程序內(nèi),這個(gè)數(shù)組變量包含傳遞給子程序的參數(shù) 4、%INC :散列表%INC包含所有用do或require語句包含的文件.關(guān)鍵字是文件名,值是這個(gè)文件的路徑 5、%ENV :包含當(dāng)前環(huán)境變量
五、全局特殊文件句柄
1、ARGV :遍歷數(shù)組變量@ARGV中的所有文件名的特殊文件句柄 2、STDERR :標(biāo)準(zhǔn)錯(cuò)誤輸出句柄 3、STDIN :標(biāo)準(zhǔn)輸入句柄 4、STDOUT :標(biāo)準(zhǔn)輸出句柄
PERL內(nèi)置變量
$- 當(dāng)前頁可打印的行數(shù),屬于Perl格式系統(tǒng)的一部分 $! 根據(jù)上下文內(nèi)容返回錯(cuò)誤號(hào)或者錯(cuò)誤串 $” 列表分隔符 $# 打印數(shù)字時(shí)默認(rèn)的數(shù)字輸出格式 $$ Perl解釋器的進(jìn)程ID $% 當(dāng)前輸出通道的當(dāng)前頁號(hào) $& 與上個(gè)格式匹配的字符串 $( 當(dāng)前進(jìn)程的組ID $) 當(dāng)前進(jìn)程的有效組ID $* 設(shè)置1表示處理多行格式.現(xiàn)在多以/s和/m修飾符取代之. $, 當(dāng)前輸出字段分隔符 $. 上次閱讀的文件的當(dāng)前輸入行號(hào) $/ 當(dāng)前輸入記錄分隔符,默認(rèn)情況是新行 $: 字符設(shè)置,此后的字符串將被分開,以填充連續(xù)的字段. $; 在仿真多維數(shù)組時(shí)使用的分隔符. $? 返回上一個(gè)外部命令的狀態(tài) $@ Perl解釋器從eval語句返回的錯(cuò)誤消息 $[ 數(shù)組中第一個(gè)元素的索引號(hào) $ 當(dāng)前輸出記錄的分隔符 $] Perl解釋器的子版本號(hào) $^ 當(dāng)前通道最上面的頁面輸出格式名字 $^A 打印前用于保存格式化數(shù)據(jù)的變量 $^D 調(diào)試標(biāo)志的值 $^E 在非UNIX環(huán)境中的操作系統(tǒng)擴(kuò)展錯(cuò)誤信息 $^F 最大的文件捆述符數(shù)值 $^H 由編譯器激活的語法檢查狀態(tài) $^I 內(nèi)置控制編輯器的值 $^L 發(fā)送到輸出通道的走紙換頁符 $^M 備用內(nèi)存池的大小 $^O 操作系統(tǒng)名 $^P 指定當(dāng)前調(diào)試值的內(nèi)部變量 $^R 正則表達(dá)式塊的上次求值結(jié)果 $^S 當(dāng)前解釋器狀態(tài) $^T 從新世紀(jì)開始算起,腳步本以秒計(jì)算的開始運(yùn)行的時(shí)間 $^W 警告開關(guān)的當(dāng)前值 $^X Perl二進(jìn)制可執(zhí)行代碼的名字 $_ 默認(rèn)的輸入/輸出和格式匹配空間 $| 控制對(duì)當(dāng)前選擇的輸出文件句柄的緩沖 $~ 當(dāng)前報(bào)告格式的名字 $` 在上個(gè)格式匹配信息前的字符串 $' 在上個(gè)格式匹配信息后的字符串 $+ 與上個(gè)正則表達(dá)式搜索格式匹配的最后一個(gè)括號(hào) $< 當(dāng)前執(zhí)行解釋器的用戶的真實(shí)ID $ 含有與上個(gè)匹配正則表達(dá)式對(duì)應(yīng)括號(hào)結(jié)果 $= 當(dāng)前頁面可打印行的數(shù)目 $> 當(dāng)前進(jìn)程的有效用戶ID $0 包含正在執(zhí)行的腳本的文件名 $ARGV 從默認(rèn)的文件句柄中讀取時(shí)的當(dāng)前文件名 %ENV 環(huán)境變量列表 %INC 通過do或require包含的文件列表 %SIG 信號(hào)列表及其處理方式 @_ 傳給子程序的參數(shù)列表 @ARGV 傳給腳本的命令行參數(shù)列表 @INC 在導(dǎo)入模塊時(shí)需要搜索的目錄列表 $-[0]和$+[0] 代表當(dāng)前匹配的正則表達(dá)式在被匹配的字符串中的起始和終止的位置 。 |