正則表達(dá)式其實(shí)就是一個(gè)特殊的字符串
更新時(shí)間:2012年10月07日 05:45:24 作者:
正則表達(dá)式其實(shí)就是一個(gè)特殊的字符串,如果需要對(duì)字符串的內(nèi)容進(jìn)行分析匹配,正則表達(dá)式是一個(gè)不錯(cuò)的選擇。簡(jiǎn)單的用String也能實(shí)現(xiàn)該過程,但是那會(huì)相當(dāng)?shù)姆爆?/div>
java正則表達(dá)式提供了比較豐富的類庫,大大簡(jiǎn)化了這個(gè)過程。下面列出常用的基本語法:
* + ? ^ $ [] () | / \ \d \D \w \W {} {n} {n,m}等,
要注意的是“|”或符號(hào)。它可以匹配單個(gè)字符和字符串。如:t[aeio]n只匹配tan,ten,tin,ton。但不匹配toon,因?yàn)樵诜嚼ㄌ?hào)內(nèi)只能匹配單個(gè)字符,要匹配toon,使用t(a|e|i|o|oo)n就可以實(shí)現(xiàn)toon。
正則表達(dá)式就是個(gè)熟練的過程,沒有什么太過于抽象的地方。其實(shí)學(xué)軟件(不喜歡“編程”兩個(gè)字)乃至其他行業(yè)都一樣,程序員的一項(xiàng)硬性指標(biāo)就是代碼量。代碼量越多說明越熟悉(或掌握或精通)這個(gè)實(shí)現(xiàn)過程。經(jīng)驗(yàn)不是學(xué)出來的,就像語言不能學(xué)習(xí)一樣。那是要靠一個(gè)量的積累。熟才能生巧(古人真厲害,他們?cè)缰肋@個(gè)道理),創(chuàng)新的前提是對(duì)某一項(xiàng)事物達(dá)到了非常熟練的程度。在此與朋友們共勉。
(二)String對(duì)正則表達(dá)式的支持方法:.matches(regex) 匹配括號(hào)內(nèi)的正則表達(dá)式;
.split(regex)切分字符串為字符數(shù)組。當(dāng)然返回值是字符數(shù)組
.replace(old String,new String)用新的字符串替代舊的字符串。需要說明的是這個(gè)替代過程原來的字符串是不變的,而是重新new一個(gè)字符串。
如:String str="abcde";
String str2=str.replace("bc", "ff");//把str中“bc"換成”ff“
System.out.println(str); //此時(shí)輸出str的值跟開始初始化時(shí)的值一樣
System.out.println(str2); //str2的值變成想要的到的”affde“
.replaceAll(regex,String)跟replace類似。
* + ? ^ $ [] () | / \ \d \D \w \W {} {n} {n,m}等,
要注意的是“|”或符號(hào)。它可以匹配單個(gè)字符和字符串。如:t[aeio]n只匹配tan,ten,tin,ton。但不匹配toon,因?yàn)樵诜嚼ㄌ?hào)內(nèi)只能匹配單個(gè)字符,要匹配toon,使用t(a|e|i|o|oo)n就可以實(shí)現(xiàn)toon。
正則表達(dá)式就是個(gè)熟練的過程,沒有什么太過于抽象的地方。其實(shí)學(xué)軟件(不喜歡“編程”兩個(gè)字)乃至其他行業(yè)都一樣,程序員的一項(xiàng)硬性指標(biāo)就是代碼量。代碼量越多說明越熟悉(或掌握或精通)這個(gè)實(shí)現(xiàn)過程。經(jīng)驗(yàn)不是學(xué)出來的,就像語言不能學(xué)習(xí)一樣。那是要靠一個(gè)量的積累。熟才能生巧(古人真厲害,他們?cè)缰肋@個(gè)道理),創(chuàng)新的前提是對(duì)某一項(xiàng)事物達(dá)到了非常熟練的程度。在此與朋友們共勉。
(二)String對(duì)正則表達(dá)式的支持方法:.matches(regex) 匹配括號(hào)內(nèi)的正則表達(dá)式;
.split(regex)切分字符串為字符數(shù)組。當(dāng)然返回值是字符數(shù)組
.replace(old String,new String)用新的字符串替代舊的字符串。需要說明的是這個(gè)替代過程原來的字符串是不變的,而是重新new一個(gè)字符串。
如:String str="abcde";
String str2=str.replace("bc", "ff");//把str中“bc"換成”ff“
System.out.println(str); //此時(shí)輸出str的值跟開始初始化時(shí)的值一樣
System.out.println(str2); //str2的值變成想要的到的”affde“
.replaceAll(regex,String)跟replace類似。
相關(guān)文章
javascript中使用正則表達(dá)式實(shí)現(xiàn)刪除字符串中的前后空格
在前臺(tái)應(yīng)用進(jìn)我們經(jīng)常會(huì)碰到要?jiǎng)h除用戶輸入的字符中的空格的問題,下面我們來介紹一下javascript中使用正則表達(dá)式實(shí)現(xiàn)刪除字符串中的空格方法2012-09-09好東西,老外用正則表達(dá)式寫的HTML分離函數(shù)
好東西,老外用正則表達(dá)式寫的HTML分離函數(shù)...2006-06-06編寫采集規(guī)則的好幫手—RegexBuddy 下載,正則不再難
編寫采集規(guī)則的好幫手—RegexBuddy 下載,正則不再難...2007-03-03正則表達(dá)式單行、多行模式簡(jiǎn)介(使用說明)
我們今天繼續(xù)討論下,它的單行,多行模式使用,及容易出現(xiàn)錯(cuò)誤地方。單行,多行模式,都是正則表達(dá)式的模式修飾符里面出現(xiàn)的參數(shù)2016-06-06javascript下一個(gè)還原h(huán)tml代碼的正則
javascript下一個(gè)還原h(huán)tml代碼的正則...2007-08-08js正則表達(dá)式中的單行模式與多行模式實(shí)例分析
這篇文章主要介紹了js正則表達(dá)式中的單行模式與多行模式,實(shí)例分析了js正則表達(dá)式中實(shí)現(xiàn)單行模式與多行模式的技巧,需要的朋友可以參考下2015-01-01