更新時間:2021-07-09 來源:黑馬程序員 瀏覽量:
正則表示“規(guī)則的、極好的”,正則表達式實際上就是規(guī)定了一組文本模式匹配規(guī)則的符號語言,一條正則表達式也稱為一個模式,使用這些模式,用戶可匹配指定文本中與表達式模式相同的字符串。
正則表達式也可理解為描述字符串結構模式的形式化表達“方法”或“思想”,它與一些特定工具搭配使用,可以實現(xiàn)包括添加、刪除、分離、插入、選擇等各種文本分析功能。
正則表達式的起源:
正則表達式(regular expression)起源于兩位神經(jīng)生理方面的科學家——美國新澤西州的Warren McCulloch和出生在美國底特律的Walter Pitts——研究出的一種用數(shù)學方式來描述神經(jīng)網(wǎng)絡的新方法,他們創(chuàng)造性地將神經(jīng)系統(tǒng)中的神經(jīng)元描述成了小而簡單的自動控制元。
1951年,數(shù)學科學家Stephen Kleene在他們工作的基礎上,發(fā)表了一篇題為《神經(jīng)網(wǎng)事件的表示法》的論文,該論文中利用稱為正則集合的數(shù)學符號來描述此模型,引入了正則表達式的概念。之后的一段時間,人們逐漸將正則表達式應用于包括生物、數(shù)學以及計算機科學等的各個領域。
在計算機領域中,正則表達式最先應用于搜索算法的一些早期研究,Unix之父Ken Thompson將其引入編輯器QED,然后是Unix上的編輯器ed,并最終引入grep。自此之后,正則表達式被廣泛地應用到了各種Unix或類Unix工具中。
隨著正則表達式的廣泛應用,正則表達式逐漸從模糊而深奧的數(shù)學概念,發(fā)展成為計算機各類工具和軟件包應用中的主要功能,亦有越來越多的編程語言,包括PHP、C#、Java等實現(xiàn)了對正則表達式的支持,并提供了與其操作相關的接口,Python也不例外。