首頁技術文章正文

什么是正則表達式?正則表達式的起源與發(fā)展?

更新時間:2021-07-09 來源:黑馬程序員 瀏覽量:

好口碑IT培訓

正則表示“規(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工具中。

1625803242965_正則表達式起源.jpg


隨著正則表達式的廣泛應用,正則表達式逐漸從模糊而深奧的數(shù)學概念,發(fā)展成為計算機各類工具和軟件包應用中的主要功能,亦有越來越多的編程語言,包括PHP、C#、Java等實現(xiàn)了對正則表達式的支持,并提供了與其操作相關的接口,Python也不例外。




猜你喜歡:

正則表達式和編程語言無關的文本匹配規(guī)則

Scala的方法和函數(shù)講解【黑馬程序員】

如何理解目標檢測中的IOU函數(shù)?

黑馬程序員Python+大數(shù)據(jù)開發(fā)培訓

分享到:
在線咨詢 我要報名
和我們在線交談!