正則表達(dá)式教程_20141001

正則表達(dá)式教程_20141001

ID:32299406

大小:522.10 KB

頁(yè)數(shù):18頁(yè)

時(shí)間:2019-02-02

正則表達(dá)式教程_20141001_第1頁(yè)
正則表達(dá)式教程_20141001_第2頁(yè)
正則表達(dá)式教程_20141001_第3頁(yè)
正則表達(dá)式教程_20141001_第4頁(yè)
正則表達(dá)式教程_20141001_第5頁(yè)
資源描述:

《正則表達(dá)式教程_20141001》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)

1、W3School正則表達(dá)式教程來(lái)源:www.w3cschool.cc整理:飛龍日期:2014.10.1正則表達(dá)式-簡(jiǎn)介除非您以前使用過(guò)正則表達(dá)式,否則您可能不熟悉此術(shù)語(yǔ)。但是,毫無(wú)疑問(wèn),您已經(jīng)使用過(guò)不涉及腳本的某些正則表達(dá)式概念。例如,您很可能使用?和*通配符來(lái)查找硬盤(pán)上的文件。通配符匹配文件名中的單個(gè)字符,而*通配符匹配零個(gè)或多個(gè)字符。像data?.dat這樣的模式將查找下列文件:data1.datdata2.datdatax.datdataN.dat使用*字符代替?字符擴(kuò)大了找到的文件的數(shù)量。data*.dat匹配下列所有文件:data.datdata1.datdata2.datdata

2、12.datdatax.datdataXYZ.dat盡管這種搜索方法很有用,但它還是有限的。通過(guò)理解*通配符的工作原理,引入了正則表達(dá)式所依賴(lài)的概念,但正則表達(dá)式功能更強(qiáng)大,而且更加靈活。正則表達(dá)式的使用,可以通過(guò)簡(jiǎn)單的辦法來(lái)實(shí)現(xiàn)強(qiáng)大的功能。下面先給出一個(gè)簡(jiǎn)單的示例:^.+@.+\..+$繼續(xù)閱讀本教程將讓您也可以自由應(yīng)用這樣的代碼。為什么使用正則表達(dá)式?典型的搜索和替換操作要求您提供與預(yù)期的搜索結(jié)果匹配的確切文本。雖然這種技術(shù)對(duì)于對(duì)靜態(tài)文本執(zhí)行簡(jiǎn)單搜索和替換任務(wù)可能已經(jīng)足夠了,但它缺乏靈活性,若采用這種方法搜索動(dòng)態(tài)文本,即使不是不可能,至少也會(huì)變得很困難。通過(guò)使用正則表達(dá)式,可以:測(cè)試字

3、符串內(nèi)的模式。例如,可以測(cè)試輸入字符串,以查看字符串內(nèi)是否出現(xiàn)電話(huà)號(hào)碼模式或信用卡號(hào)碼模式。這稱(chēng)為數(shù)據(jù)驗(yàn)證。替換文本??梢允褂谜齽t表達(dá)式來(lái)識(shí)別文檔中的特定文本,完全刪除該文本或者用其他文本替換它。基于模式匹配從字符串中提取子字符串??梢圆檎椅臋n內(nèi)或輸入域內(nèi)特定的文本。例如,您可能需要搜索整個(gè)網(wǎng)站,刪除過(guò)時(shí)的材料,以及替換某些HTML格式標(biāo)記。在這種情況下,可以使用正則表達(dá)式來(lái)確定在每個(gè)文件中是否出現(xiàn)該材料或該HTML格式標(biāo)記。此過(guò)程將受影響的文件列表縮小到包含需要?jiǎng)h除或更改的材料的那些文件。然后可以使用正則表達(dá)式來(lái)刪除過(guò)時(shí)的材料。最后,可以使用正則表達(dá)式來(lái)搜索和替換標(biāo)記。發(fā)展歷史正則表達(dá)式的

4、"祖先"可以一直上溯至對(duì)人類(lèi)神經(jīng)系統(tǒng)如何工作的早期研究。WarrenMcCulloch和WalterPitts這兩位神經(jīng)生理學(xué)家研究出一種數(shù)學(xué)方式來(lái)描述這些神經(jīng)網(wǎng)絡(luò)。1956年,一位叫StephenKleene的數(shù)學(xué)家在McCulloch和Pitts早期工作的基礎(chǔ)上,發(fā)表了一篇標(biāo)題為"神經(jīng)網(wǎng)事件的表示法"的論文,引入了正則表達(dá)式的概念。正則表達(dá)式就是用來(lái)描述他稱(chēng)為"正則集的代數(shù)"的表達(dá)式,因此采用"正則表達(dá)式"這個(gè)術(shù)語(yǔ)。隨后,發(fā)現(xiàn)可以將這一工作應(yīng)用于使用KenThompson的計(jì)算搜索算法的一些早期研究,KenThompson是Unix的主要發(fā)明人。正則表達(dá)式的第一個(gè)實(shí)用應(yīng)用程序就是Unix

5、中的qed編輯器。如他們所說(shuō),剩下的就是眾所周知的歷史了。從那時(shí)起直至現(xiàn)在正則表達(dá)式都是基于文本的編輯器和搜索工具中的一個(gè)重要部分。應(yīng)用領(lǐng)域目前,正則表達(dá)式已經(jīng)在很多軟件中得到廣泛的應(yīng)用,包括*nix(Linux,Unix等)、HP等操作系統(tǒng),PHP、C#、Java等開(kāi)發(fā)環(huán)境,以及很多的應(yīng)用軟件中,都可以看到正則表達(dá)式的影子。C#正則表達(dá)式在我們的C#教程中,C#正則表達(dá)式這一章節(jié)專(zhuān)門(mén)介紹了有關(guān)C#正則表達(dá)式的知識(shí)。Java正則表達(dá)式在我們的Java教程中,Java正則表達(dá)式這一章節(jié)專(zhuān)門(mén)介紹了有關(guān)Java正則表達(dá)式的知識(shí)。JavaScript正則表達(dá)式在我們的JavaScript教程中,Ja

6、vaScriptRegExp對(duì)象這一章節(jié)專(zhuān)門(mén)介紹了有關(guān)JavaScript正則表達(dá)式的知識(shí),同時(shí)我們還提供了完整的JavaScriptRegExp對(duì)象參考手冊(cè)。Python正則表達(dá)式在我們的Python基礎(chǔ)教程中,Python正則表達(dá)式這一章節(jié)專(zhuān)門(mén)介紹了有關(guān)Python正則表達(dá)式的知識(shí)。Ruby正則表達(dá)式在我們的Ruby教程中,Ruby正則表達(dá)式這一章節(jié)專(zhuān)門(mén)介紹了有關(guān)Ruby正則表達(dá)式的知識(shí)。正則表達(dá)式-語(yǔ)法正則表達(dá)式(regularexpression)描述了一種字符串匹配的模式,可以用來(lái)檢查一個(gè)串是否含有某種子串、將匹配的子串做替換或者從某個(gè)串中取出符合某個(gè)條件的子串等。列目錄時(shí),dir

7、*.txt或ls*.txt中的*.txt就不是一個(gè)正則表達(dá)式,因?yàn)檫@里*與正則式的*的含義是不同的。構(gòu)造正則表達(dá)式的方法和創(chuàng)建數(shù)學(xué)表達(dá)式的方法一樣。也就是用多種元字符與運(yùn)算符可以將小的表達(dá)式結(jié)合在一起來(lái)創(chuàng)建更大的表達(dá)式。正則表達(dá)式的組件可以是單個(gè)的字符、字符集合、字符范圍、字符間的選擇或者所有這些組件的任意組合。正則表達(dá)式是由普通字符(例如字符a到z)以及特殊字符(稱(chēng)為"元字符")組成的文字模式。模式描述在搜

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶(hù)上傳,版權(quán)歸屬用戶(hù),天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶(hù)請(qǐng)聯(lián)系客服處理。