小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

腳本語言介紹——perl(4)

 mzsm 2022-06-22 發(fā)布于湖北

本公眾號【讀芯樹:duxinshu_PD】主要介紹數(shù)字集成電路物理設(shè)計相關(guān)知識,才疏學(xué)淺,如有錯誤,歡迎指正交流學(xué)習(xí)。

是集成電路物理設(shè)計的第七個系列【腳本語言】的第十八篇文章,本篇文章主要介紹perl相關(guān)內(nèi)容

01

目錄操作

#顯示目錄下的所有tcl的文件$dir='/home/user/*.tcl';my @files=glob($dir);foreach (@files) { print '$_\n';}opendir (DIR, '/home/user/scr') or die 'no this dir: $!';foreach (sort grep(/^.*\.tcl$/, readdir(DIR))) { print '$_\n';}closedir DIR;#創(chuàng)建一個新目錄$dir='/tmp/new_folder';mkdir ($dir) or die 'no create $dir, $!';#刪除目錄$dir='/tmp/new_folder';rmdir ($dir) or die 'no create $dir, $!';#切換目錄chdir ($dir) or die 'no change $dir, $!';

02


特殊變量

#全局標量特殊變量$_            #默認輸入/模式匹配內(nèi)容$ARG          #默認輸入/模式匹配內(nèi)容$ARGV         #從默認的文件句柄中讀取當前文件名$.            #前一次讀的文件句柄當行行號$?            #返回上一個外部命令的狀態(tài)$!            #返回錯誤信息的值$@            #eval命令的錯誤信息,如果為空,表示eval命令執(zhí)行成功$$            #當前運行perl的進程號$0            #當前正在執(zhí)行的腳本文件名$[            #數(shù)組第一個元素的下標,默認為0
#全局數(shù)組特殊變量@ARGV       #腳本命令行參數(shù)列表@INC        #導(dǎo)入模塊需要搜索的目錄列表@F #命令行數(shù)組輸入
#全局哈希特殊變量%INC      #文件路徑 %ENV #當前環(huán)境變量
#全局特殊文件句柄ARGV        #遍歷數(shù)組變量@ARGV中所有文件名的特殊文件句柄STDERR      #標準錯誤輸出句柄STDIN #標準輸入句柄STDOUT #標準輸出句柄
#全局特殊變量__FILE__    #當前文件名__LINE__    #當前行號__END__     #忽略后面文本__PACKAGE__ #包的名字
#正則表達式特殊變量$n          #上次模式匹配的第n個子串$& #上次匹配成功的字符串$`          #上次匹配成功的子串之前的內(nèi)容$'          #上次匹配成功的子串之后的內(nèi)容$+          #格式匹配的最后一個括號

03


正則表達式

m//     #匹配  =~表示匹配, !~表示不匹配 i: 忽略大小寫;m:多行模式;o:僅賦值一次;s:但行模式;x:忽略模式中空白;g:全局匹配;cg:全局匹配失敗后,允許再次查找。$`  #匹配部分的前一部分字符串$&  #匹配字符串$' #匹配字符剩余的部分#匹配$str='this is a string';if ($str=~/is/) { print 'pattern is found!\n'}
s/old/new/ #替換i:忽略大小寫;m:行開頭和結(jié)尾是“^”和“$”; s:'.'包括換行符;x:忽略空白符;g:替換所有匹配字符串。$str='this is a string';$str=~s/this/that/;     #將this替換為thatprint '$str\n';
tr/// #轉(zhuǎn)化c:轉(zhuǎn)化所有未制定字符;d:刪除所有指定字符;s:將多個相同的輸出字符合并一個。$str='this is a string';$str=~tr/a-z/A-Z/;      #將小寫轉(zhuǎn)化為大寫$str=~tr/\t / /d;       #將tab空格刪除$str=~tr/0-9/ /cs;      #提取數(shù)字

04


正則表達式2

.     #換行符外任意字符x?    #匹配'x'0次或1x*    #匹配'x'0次或多次x+    #匹配'x'1次或多次.*    #匹配任意字符0次或多次.+    #匹配任意字符1次或多次{m}   #匹配m個前面指定內(nèi)容{m,}  #匹配m個或m以上個前面指定內(nèi)容{m,n} #匹配大于等于m小于等于n個前面指定內(nèi)容[]    #匹配[]內(nèi)部字符[0-9] #匹配數(shù)字[^]   #不匹配[]內(nèi)部字符[^a-z]#不匹配小寫字母^     #匹配字符開頭 $     #匹配字符結(jié)尾\d    #匹配一個數(shù)字,等于[0-9]\d+   #匹配多個數(shù)字,等于[0-9]+\D    #匹配非數(shù)字,等于[^0-9]\w    #匹配字母、下劃線或數(shù)字,等于[a-zA-Z0-9_]\W    #匹配非字母、下劃線或數(shù)字,等于[^a-zA-Z0-9_]\s    #匹配空格,等于[\n\t\r\f] \S    #匹配非空格,等于[^\n\t\r\f] \b    #匹配以字母數(shù)字為邊界的字符串\B    #匹配不以字母數(shù)字為邊界的字符串a|b|c #匹配a或者b或者c

05


進程管理

#反引號:可以執(zhí)行Unix命令$dir='/home/user/tmp/';chdir ($dir) or die 'no change $dir, $!';@files=`ls -trl`;foreach $file (@files) { print $file;}

06


參考文獻

https://www.runoob.com/perl/perl-tutorial.htmlhttps://www.perl.org/

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多