一、正則表達(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á)式在被匹配的字符串中的起始和終止的位置 。