這篇文章主要介紹正則表達(dá)式如何實(shí)現(xiàn)匹配并替換功能,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
正則表達(dá)式,又稱規(guī)則表達(dá)式。(英語:RegularExpression,在代碼中常簡寫為regex、regexp或RE),計(jì)算機(jī)科學(xué)的一個(gè)概念。正則表達(dá)式通常被用來檢索、替換那些符合某個(gè)模式(規(guī)則)的文本。
正則表達(dá)式匹配并替換
輸入:public<%=classname%>Extension:IExt
目的:匹配<%=%>中間的classname并替換
表達(dá)式:<%=.*%>
代碼:
privatestringReplace(stringinput)
{
returnRegex.Replace(input,@"<%=.*%>",newMatchEvaluator(RefineCodeTag),RegexOptions.Singleline);
}
stringRefineCodeTag(Matchm)
{
stringx=m.ToString();
x=Regex.Replace(x,"<%=","");
x=Regex.Replace(x,"%>","");
returnx.Trim()+",";
}
截圖:
2
正則表達(dá)式選項(xiàng)RegexOptions:
ExplicitCapture
n
只有定義了命名或編號(hào)的組才捕獲
IgnoreCase i 不區(qū)分大小寫
IgnorePatternWhitespace x 消除模式中的非轉(zhuǎn)義空白并啟用由#標(biāo)記的注釋。
MultiLine m
多行模式,其原理是修改了^和$的含義
SingleLine s
單行模式,和MultiLine相對應(yīng)
正則表達(dá)式替換的其他功能:
$number 把匹配的第number組替換成替換表達(dá)式
這段代碼返回的是“010120305”
就是說,對組一的每個(gè)匹配結(jié)果都用"0$1"這個(gè)表達(dá)式來替換,"0$1"中"$1"由組1匹配的結(jié)果代入
publicstaticvoidMain()
{
strings="11235";
s=Regex.Replace(s,@"(\d+)(?#這個(gè)是注釋)","0$1",RegexOptions.Compiled|RegexOptions.IgnoreCase);
Console.WriteLine(s);
Console.ReadLine();
以上是“正則表達(dá)式如何實(shí)現(xiàn)匹配并替換功能”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
標(biāo)題名稱:正則表達(dá)式如何實(shí)現(xiàn)匹配并替換功能-創(chuàng)新互聯(lián)
新聞來源:http://www.rwnh.cn/article40/csjdeo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、小程序開發(fā)、網(wǎng)站排名、軟件開發(fā)、電子商務(wù)、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容