官术网_书友最值得收藏!

6.1 什么是正則表達式

視頻講解:光盤\TM\lx\6\01 什么是正則表達式.mp4

正則表達式是一種描述字符串結構的語法規(guī)則,是一個特定的格式化模式,可以匹配、替換、截取匹配的字串。對于用戶來說,可能以前接觸過DOS,如果想匹配當前文件夾下所有的文本文件,可以輸入dir *.txt命令,按Enter鍵后所有.txt文件將會被列出來。這里的*.txt即可理解為一個簡單的正則表達式。

在學習正則表達式之前,先來了解一下正則表達式中的幾個容易混淆的術語,這對于學習正則表達式有很大的幫助。

grep:最初是ED編輯器中的一條命令,用來顯示文件中特定的內容,后來成為一個獨立的工具。

egrep:grep雖然不斷地更新升級,但仍然無法跟上技術的腳步。為此,貝爾實驗室推出了egrep,意為“擴展的grep”,這大大增強了正則表達式的能力。

POSIX(Portable Operating System Interface of Unix):可移植操作系統(tǒng)接口。在grep發(fā)展的同時,其他一些開發(fā)人員也按照自己的喜好開發(fā)出了具有獨特風格的版本。但問題也隨之而來,有的程序支持某個元字符,而有的程序則不支持。因此就有了POSIX, POSIX是一系列標準,確保了操作系統(tǒng)之間的可移植性。但POSIX和SQL一樣,沒有成為最終的標準而只能作為一個參考。

Perl(Practical Extraction and Reporting Language):實際抽取與匯報語言。1987年,Larry Wall發(fā)布了Perl。在隨后的7年時間里,Perl經歷了從Perl1到現在的Perl5的發(fā)展,最終Perl成為POSIX之后的另一個標準。

PCRE:Perl的成功,讓其他開發(fā)人員在某種程度上要兼容Perl,包括C/C++、Java、Python等都有自己的正則表達式。1997年,Philip Hazel開發(fā)了PCRE庫,這是兼容Perl正則表達式的一套正則引擎,其他開發(fā)人員可以將PCRE整合到自己的語言中,為用戶提供豐富的正則功能。許多軟件都使用PCRE, PHP正是其中之一。

主站蜘蛛池模板: 嘉禾县| 青海省| 台前县| 邵武市| 鸡西市| 格尔木市| 辰溪县| 和硕县| 新安县| 阿坝| 沭阳县| 铜梁县| 鄂伦春自治旗| 和平区| 无锡市| 新密市| 丽江市| 乌鲁木齐县| 凭祥市| 杂多县| 都安| 阜城县| 宝山区| 余姚市| 邢台市| 临夏市| 伽师县| 韩城市| 涪陵区| 信丰县| 夏河县| 汝阳县| 镇坪县| 水富县| 肇州县| 长寿区| 肇源县| 类乌齐县| 波密县| 翼城县| 宜丰县|