正則表達式簡介
正則表達式,又稱規(guī)則表達式。(英語:Regular Expression,在代碼中常簡寫為regex、regexp或RE),計算機科學的一個概念。正則表達式通常被用來檢索、替換那些符合某個模式(規(guī)則)的文本。
許多程序設計語言都支持利用正則表達式進行字符串操作。例如,在Perl中就內(nèi)建了一個功能強大的正則表達式引擎。正則表達式這個概念最初是由Unix中的工具軟件(例如sed和grep)普及開的。正則表達式通常縮寫成“regex”,單數(shù)有regexp、regex,復數(shù)有regexps、regexes、regexen。
這篇文章重點給大家介紹正則表達式中的 .*? 或 .*+ 的意思 ,具體內(nèi)容如下所示:
最近要做一個提取文字特殊內(nèi)容的工具,老是不會寫正則表達,經(jīng)常遇到.*? 或 .*+ 這些符號,網(wǎng)上查查,終于知道什么意思了,記錄一下網(wǎng)上解釋結果:
后邊多一個?表示懶惰模式。
必須跟在*或者+后邊用
如:img src="test.jpg" width="60px" height="80px"/>
如果用正則匹配src中內(nèi)容非懶惰模式匹配
src=".*"
匹配結果是:src="test.jpg" width="60px" height="80px"
意思是從="往后匹配,直到最后一個"匹配結束懶惰模式正則:
src=".*?"
結果:src="test.jpg"
因為匹配到第一個"就結束了一次匹配。不會繼續(xù)向后匹配。因為他懶惰嘛。.表示除\n之外的任意字符
*表示匹配0-無窮
+表示匹配1-無窮
去掉括號實例
span style="font-size:14px;">public class Test { public static void main(String[] args) { String s = "圖片(img=32,34)http://www.sds.com/jpg(/img) 圖片(img=32,34)http://www.sds.com/jpg(/img)"; System.out.println(s.replaceAll("\\[.+?\\]","")); } }/span>
結果:
圖片http://www.sds.com/jpg圖片http://www.sds.com/jpg
總結
到此這篇關于正則表達式中的 .*? 或 .*+ 的意思 的文章就介紹到這了,更多相關正則表達式中的 .*? .*+ 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
標簽:南昌 欽州 中衛(wèi) 延邊 黑河 駐馬店 阜陽 臨夏
巨人網(wǎng)絡通訊聲明:本文標題《正則表達式中的 .*? 或 .*+ 的意思》,本文關鍵詞 正則,表達式,中的,或,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。