最新最詳細(xì)的正則表達(dá)式入門教程_第1頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、最新最詳細(xì)的正則表達(dá)式入門教程一、正則表達(dá)式到底是什么東西?正則表達(dá)式,又稱正規(guī)表示法、常規(guī)表示法(英語:regular expression,在代碼中常簡寫為regex、regexp或re),計(jì)算機(jī)科學(xué)的一個(gè)概念。正則表達(dá)式用法單個(gè)字符串來描述、匹配一系列符合某個(gè)句規(guī)矩則的字符串。在無數(shù)文本編輯器里,正則表達(dá)式通常被用來檢索、替換那些符合某個(gè)模式的文本。在編寫處理字符串的程序或網(wǎng)頁時(shí),常常會(huì)有查找符合某些復(fù)雜規(guī)章的字符串的需要。正則表達(dá)式就是用于描述這些規(guī)章的工具。換句話說,正則表達(dá)式就是記錄文本規(guī)章的代碼。你用法過windows/dos下用于文件查找的通配符(wildcard),也就是*和

2、?。假如你想查找某個(gè)名目下的全部的word文檔的話,你會(huì)搜尋*.doc。在這里,*會(huì)被說明成隨意的字符串。和通配符類似,正則表達(dá)式也是用來舉行文本匹配的工具,只不過比起通配符,它能更精確地描述你的需求——固然,代價(jià)就是更復(fù)雜——比如你可以編寫一個(gè)正則表達(dá)式,用來查找全部以0開始,后面跟著2-3個(gè)數(shù)字,然后是一個(gè)連字號(hào)-,最后是7或8位數(shù)字的字符串(0321-7654321)。二、初識(shí)正則表達(dá)式學(xué)習(xí)正則表達(dá)式的最好辦法是從例子開頭,理解例子之后再對(duì)例子舉行修改,試驗(yàn)。下面給出了不少容易的例

3、子,并對(duì)它們作了具體的解釋。假設(shè)你在一篇英文文章里面查找hi,你可以用法正則表達(dá)式hi。這幾乎是最容易的正則表達(dá)式了,它可以精確匹配這樣的字符串:由兩個(gè)字符組成,前一個(gè)字符是h,后一個(gè)是i。通常,處理正則表達(dá)式的工具會(huì)提供一個(gè)忽視大小寫的選項(xiàng),假如選中了這個(gè)選項(xiàng),它可以匹配hi,hi,hi,hi這四種狀況中的隨意一種。不幸的是,無數(shù)單詞里包含hi這兩個(gè)延續(xù)的字符,比如him,history,high等等。用hi來查找的話,這里邊的hi也會(huì)被找出來。假如要精確地查找hi這個(gè)單詞的話,我們應(yīng)當(dāng)用法bhib。b是正則表達(dá)式規(guī)定的一個(gè)特別代碼(好吧,某些人叫它元字符,metacharacter),代表

4、著單詞的開始或結(jié)尾,也就是單詞的分界處。雖然通常英文的單詞是由空格,標(biāo)點(diǎn)符號(hào)或者換行來分隔的,但是b并不匹配這些單詞分隔字符中的任何一個(gè),它只匹配一個(gè)位置。假如需要更精確的說法,b匹配這樣的位置:它的前一個(gè)字符和后一個(gè)字符不全是(一個(gè)是,一個(gè)不是或不存在)w。如果你要找的是hi后面不遠(yuǎn)處跟著一個(gè)lucy,你應(yīng)當(dāng)用bhib.*blucyb。這里,.是另一個(gè)元字符,匹配除了換行符以外的隨意字符。*同樣是元字符,不過它代表的不是字符,也不是位置,而是數(shù)量——它指定*前邊的內(nèi)容可以延續(xù)重復(fù)用法隨意次以使囫圇表達(dá)式得到匹配。因此,.*連在一起就意味著隨意數(shù)量的不包

5、含換行的字符。現(xiàn)在bhib.*blucyb的意思就很顯然了:先是一個(gè)單詞hi,然后是隨意個(gè)隨意字符(但不能是換行),最后是lucy這個(gè)單詞。換行符就是&39;n&39;,ascii編碼為10(十六進(jìn)制0x0a)的字符。假如同時(shí)用法其它元字符,我們就能構(gòu)造出功能更強(qiáng)大的正則表達(dá)式。比如下面這個(gè)例子:0dd-dddddddd匹配這樣的字符串:以0開始,然后是兩個(gè)數(shù)字,然后是一個(gè)連字號(hào)-,最后是8個(gè)數(shù)字(也就是中國的電話號(hào)碼。固然,這個(gè)例子只能匹配區(qū)號(hào)為3位的情形)。這里的d是個(gè)新的元字符,匹配一位數(shù)字(0,或1,或2,或)。-不是元字符,只匹配它本身——連字符(或者減號(hào),或者中橫線,或者隨你怎么稱呼它

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論