資源描述:
《正則表達(dá)式參考手冊》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、正則表達(dá)式參考手冊__Mini版?來自:http://www.cnblogs.com/jinliangliu/archive/2006/04/05/367505.html一些學(xué)習(xí)正則的資料:深入淺出正則表達(dá)式(一)http://dragon.cnblogs.com/archive/2006/05/08/394078.html深入淺出正則表達(dá)式(二)http://dragon.cnblogs.com/archive/2006/05/09/394923.html正則文章集錦:http://www.cn-dos.net/forum/vi
2、ewthread.php?tid=24206&fpage=1&highlight=%E6%AD%A3%E5%88%99正則表達(dá)式就是由普通字符(例如字符?a?到?z)以及特殊字符(稱為元字符)組成的文字模式。該模式描述在查找文字主體時待匹配的一個或多個字符串。正則表達(dá)式作為一個模板,將某個字符模式與所搜索的字符串進(jìn)行匹配。本文詳細(xì)地列出了能在正則表達(dá)式中使用,以匹配文本的各種字符。當(dāng)你需要解釋一個現(xiàn)有的正則表達(dá)式時,可以作為一個快捷的參考。更多詳細(xì)內(nèi)容,請參考:FrancoisLiger,CraigMcQueen,PalWilto
3、n[劉樂亭?譯]C#字符串和正則表達(dá)式參考手冊?北京:清華大學(xué)出版社?2003.2一.??????匹配字符字符類匹配的字符舉?例d從0-9的任一數(shù)字dd匹配72,但不匹配aa或7aD任一非數(shù)字字符DDD匹配abc,但不匹配123w任一單詞字符,包括A-Z,a-z,0-9和下劃線wwww匹配Ab-2,但不匹配∑£$%*或Ab_@W任一非單詞字符W匹配@,但不匹配as任一空白字符,包括制表符,換行符,回車符,換頁符和垂直制表符匹配在HTML,XML和其他標(biāo)準(zhǔn)定義中的所有傳統(tǒng)空白字符S任一非空白字符空白字
4、符以外的任意字符,如A%&g3;等.任一字符匹配除換行符以外的任意字符除非設(shè)置了MultiLine先項[…]括號中的任一字符[abc]將匹配一個單字符,a,b或c.[a-z]將匹配從a?到z的任一字符[^…]不在括號中的任一字符[^abc]將匹配一個a、b、c之外的單字符,可以a,b或A、B、C[a-z]將匹配不屬于a-z的任一字符,但可以匹配所有的大寫字母?二.??????重復(fù)字符重復(fù)字符含?義舉?例{n}匹配前面的字符n次x{2}匹配xx,但不匹配x或xxx{n,}匹配前面的字符至少n次x{2}匹配2個或更多的x,如xxx,x
5、xx..{n,m}匹配前面的字符至少n次,至多m次。如果n為0,此參數(shù)為可選參數(shù)x{2,4}匹配xx,xxx,xxxx,但不匹配xxxxx?匹配前面的字符0次或1次,實質(zhì)上也是可選的x??匹配x或零個x+匹配前面的字符0次或多次x+?匹配x或xx或大于0的任意多個x*匹配前面的字符0次或更多次x*?匹配0,1或更多個x?三.??????定位字符定位字符描?述^隨后的模式必須位于字符串的開始位置,如果是一個多行字符串,則必須位于行首。對于多行文本(包含回車符的一個字符串)來說,需要設(shè)置多行標(biāo)志$前面的模式必須位于字符串的未端,如果是
6、一個多行字符串,必須位于行尾A前面的模式必須位于字符串的開始位置,忽略多行標(biāo)志z前面的模式必須位于字符串的未端,忽略多行標(biāo)志Z前面的模式必須位于字符串的未端,或者位于一個換行符前b匹配一個單詞邊界,也就是一個單詞字符和非單詞字符中間的點。要記住一個單詞字符是[a-zA-Z0-9]中的一個字符。位于一個單詞的詞首B匹配一個非單詞字符邊界位置,不是一個單詞的詞首注:定位字符可以應(yīng)用于字符或組合,放在字符串的左端或右端??四.??????分組字符分組字符定?義舉?例()此字符可以組合括號內(nèi)模式所匹配的字符,?它是一個捕獲組,也
7、就是說模式匹配的字符作為最終設(shè)置了ExplicitCapture選項――默認(rèn)狀態(tài)下字符不是匹配的一部分輸入字符串為:ABC1DEF2XY匹配3個從A到Z的字符和1個數(shù)字的正則表達(dá)式:([A-Z]{3}d)將產(chǎn)生兩次匹配:Match1=ABC1;Match2=DEF2每次匹配對應(yīng)一個組:Match1?的第一個組=ABC;Match2的第1個組=DEF有了反向引用,就可以通過它在正則表達(dá)式中的編號以及C#和類Group,GroupCollection來訪問組。如果設(shè)置了ExplicitCapture選項,就不能使用組所捕獲的內(nèi)容(?
8、:)此字符可以組合括號內(nèi)模式所匹配的字符,?它是一個非捕獲組,這意味著模式所的字符將不作為一個組來捕獲,但它構(gòu)成了最終匹配結(jié)果的一部分。它基本上與上面的組類型相同,但設(shè)定了選項ExplicitCapture輸入字符串為:1ABBSA1C匹配一個數(shù)字