正則表示式的研究和在網頁抓取中的應用論文
正則表示式的研究和在網頁抓取中的應用論文
正則表示式又稱正規表示法、常規表示法(Regular Ex-press ion,是計算機科學的一個基本概念)正則表示式使用單個字串來描述、匹配一系列符合某個句法規則的字串、)在很多文字編輯器裡,正則表示式通常被用來檢索、替換那些符合某個模式的文字。
許多程式設計語言都支援利用正則表示式進行字串操作,例如,在Python中就內建了一個功能強大的正則表示式模組正則表示式這個概念最初是由Unix中的工具軟體(例如SPC和grip普及開的)。
1正則表示式歷史
正則表示式或許可一直追溯到科學家對人類神經系統工作原理的早期研究、美國新澤西州的Warren McCulloch和出生在美國底特律的Walter Pitts這兩位神經生理方面的科學家,研究出了一種用數學方式來描述神經網路的新方法,他們創造性地將神經系統中的神經元描述成了小而簡單的自動控制元,從而做出了一項偉大的工作革新。
在1956年,出生在被馬克·吐溫(Mark Twain)稱為“美國最美麗的城市之一”的哈特福德市的一位名叫LIStephenKleene的數學科學家,在Warren McCulloch和Walter Pitts早期工作的基礎之上,發表了一篇題目是《神經網事件的表示法》的論文,利用稱之為正則集合的數學符號來描述此模型,引入了正則表示式的概念)正則表示式被作為用來描述其稱之為“正則集的代數”的一種表示式,因而採用了“正則表示式”這個術語。
2正則表示式基本概念和語法
2.1什麼是正則表示式
正則表示式由一些普通字元(literal characters)和一些元字元(meta characters)組成、普通字元包括大小寫的字母、數字和可列印的符號,而元字元則具有特殊的含義。
2.2正則表示式的結構
正則表示式結構為:錨定符字符集修飾符。
2.3正則表示式處理流程
(1)匹配字串的正則:“bat”,“bit”,“but”,“hat”,“hit”或“hut"。
含義說明:匹配‘h’或者‘h’開頭,然後是任意1個字元,然後是‘t’字元和‘,’字元、‘,’字元可以沒有,所以‘,’後面有一個‘?’。
(2)匹配用一個空格分隔的任意一對單詞,比如,名和姓。
(3)匹配用一個逗號和一個空格分開的'一個單詞和一個字母、例如,英文人名中的姓和名的首字母。
(4)匹配全體Python整數的字串表示形式的集合。
3正則表示式在網頁抓取中的應用例項
在Web應用中,一個常見的需求是抓取網頁中指定的內容,例如網頁中的標題,超連結等,這個需求可以用正則表示式很方便地完成。
4結語
正則表示式語法簡單,功能強大,在口常的文字處理,網頁內容解析上有各種成熟的應用和基於正則的工具,透過正則表示式,大大提高了處理字串和文字的效率,隨著技術的發展正則表示式的應用領域和功能也會越來越強大。