正則表達式 | regular expression wiki
「正則表達式」的各地常用別名中國大陸正則表達式臺灣正規表示式[1]、正規表示法、規則運算式港澳正則表達式正則表達式(英語:RegularExpression,常簡寫為regex、regexp或RE),又稱正規表達式、正規表示法、規則運算式、常規表示法,是計算機科學的一個概念。正則表達式使用單個字符串來描述、匹配一系列符合某個句法規則的字符串。在很多文本編輯器裡,正則表達式通常被用來檢索、替換那些符合某個模式的文本。許多程序設計語言都支持利用正則表達式進行字符串操作。例如,在Perl中就內建了一個功能強大的正則表達式引擎。正則表...
「正則表達式」的各地常用別名中國大陸正則表達式 臺灣正規表示式[1]、正規表示法、規則運算式 港澳正則表達式正則表達式(英語:Regular Expression,常簡寫為regex、regexp或RE),又稱正規表達式、正規表示法、規則運算式、常規表示法,是計算機科學的一個概念。正則表達式使用單個字符串來描述、匹配一系列符合某個句法規則的字符串。在很多文本編輯器裡,正則表達式通常被用來檢索、替換那些符合某個模式的文本。
許多程序設計語言都支持利用正則表達式進行字符串操作。例如,在Perl中就內建了一個功能強大的正則表達式引擎。正則表達式這個概念最初是由Unix中的工具軟件(例如sed和grep)普及開的。
譯名問題[編輯]Regular Expression的Regular一般被譯為正則、正則或常規。此處的Regular即是規則、規律的意思,Regular Expression即「描述某種規則的表達式」之意。[來源請求]
最初的正則表達式出現於理論計算機科學的自動控制理論和形式化語言理論中。在這些領域中有對計算(自動控制)的模型和對形式化語言描述與分類的研究。
1940年,沃倫·麥卡洛克與沃爾特·皮茨將神經系統中的神經元描述成小而簡單的自動控制元。
1950年代,數學家斯蒂芬·科爾·克萊尼利用稱之為「正則集合」的數學符號來描述此模型。肯·湯普遜將此符號系統引入編輯器QED,隨後是Unix上的編輯器ed,並最終引入grep。自此以後,正則表達式被廣泛地應用於各種Unix或類Unix系統的工具中。正則表達式的POSIX規範,分為基本型正則表達式(Basic Regular Expression,BRE)和擴展型正則表達式(Extended Regular Express,ERE)兩大流派。在兼容POSIX的UNIX系統上,grep和egrep之類的工具都遵循POSIX規範,一些數據庫系統中的正則表達式也符合POSIX規範。grep、vi、sed都屬於BRE,是歷史最早的正則表達式,因此元字符必須轉譯之後才具有特殊含義。egrep、awk則屬於ERE,元字符不用轉譯
Perl的正則表達式源自於Henry Spencer於1986年1月19日發布的regex,它已經演化...