資源描述:
《ue與正則表達式,ue如何使用正則表達式》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。
1、1基本概念元字符:元字符說明.?匹配除換行符以外的任意字符w?匹配字母或數(shù)字或下劃線或漢字s?匹配任意的空白符()d?匹配數(shù)字b?匹配單詞的開始或結束W?匹配任意不是字母,數(shù)字,下劃線,漢字的字符S?匹配任意不是空白符的字符D?匹配任意非數(shù)字的字符B?匹配不是單詞開頭或結束的位置^?匹配行首$?匹配行尾字符轉(zhuǎn)義如果您想查找元字符本身的話,需要使用””來轉(zhuǎn)意。例如”.”代表除換行以外的任意字符,如果您想搜索”.”這個字符的話,需要這樣使用”.”。重復語法說明*?重復零次或更多次+?重
2、復一次或更多次??重復零次或一次{n}?重復n次{n,}?重復n次或更多次{n,m}?重復n到m次字符集若要匹配aeiou五個字符中的任意一個,可以表示成[aeiou]。再如[0-9]表示0到9之間的任意一個數(shù)字,它的含義和元字符中的d實際上是一樣的。反意如果要匹配非a則[^a],除aeiou五個字母之外的表示成[^aeiou],貪婪與止貪設有字符串dveadebcadefboipi,正則表達式a.*b,表達式的意思是匹配由a開始中間包含任意多個字符并以b結尾,這個表達式匹配出來的結果是adebca
3、defb,而不會是adeb,我們稱這種匹配為貪婪匹配,因為它匹配了盡可能多的字符。要防止這種貪婪匹配,使用”?”,把上面的表達式寫成a.*?b的話,匹配出來的結果就是adeb了。2常用整個表達式行首空格:^s+行尾空格:s+$IP地址:[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}正整數(shù):^[1-9]d*$負整數(shù):^-[1-9]d*$3應用實例例1我想給一首詩的最后一行都加上逗號,^p表示匹配一個換行符(CR/LF)(段落)(DOS文件),所以把“
4、^p”替換成“,^p”就是說找到所有的換行符,替換成逗號+換行符,所以這樣替換之后就成了除了最后一行(沒有換行符)其他都加上了逗號.(注意在MAC和Linux中是^p?和^r)例2我從網(wǎng)上拷貝的HTML源文件的超鏈接想要全部替換成href="###"可以查找href=".*",別忘了.表示任意字符(除了換行符),*表示匹配任意次數(shù),所以".*"就是不管雙引號里面的是什么都匹配,所以得到了想要的結果例3我想在“第一章第二章第三章”這樣的標題前面加上》》,需要用到分組,就是保護這么幾個東西不替換,(當然你
5、也可以把“第”字都替換成“》》第”)例4我要提取一個文本文件的所有電話號碼和電子郵件地址并保存到新的文件。