成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

java正則表式的使用

zoomdong / 2867人閱讀

摘要:直接使用正則表達(dá)式對輸入的字符串進(jìn)行匹配,匹配成功則返回使用正則表示式,進(jìn)行字符串分割進(jìn)行匹配操作,如果匹配成功,這三個(gè)方法都會(huì)返回其中,是在源字符串中找出和正則表達(dá)式匹配的字符串。

概念 正則表達(dá)式

在閱讀本文前,你應(yīng)該已經(jīng)了解了正則表達(dá)式的基本概念以及如何書寫正則表達(dá)式。如果對正則表達(dá)式不是太了解,或者想更深入地了解正則表示式,請點(diǎn)擊這里。

捕獲組

捕獲組能夠讓我們方便地從正則表達(dá)式中提取出我們需要的內(nèi)容。捕獲組根據(jù)字符出現(xiàn)的順序,從左往右開始進(jìn)行編號。例如正則表達(dá)式((A)(B(C))), 其捕獲組分別為:

((A)(B(C)))

(A)

(B(C))

(C)

一個(gè)捕獲組通常是用括號包起來的部分,其中整個(gè)正則表示式是第一個(gè)捕獲組,可以選擇用括號包起來,也可以不用括號。除第一個(gè)捕獲組之外,其他捕獲組都需用括號包起來。

詳解Java正則表示式的使用 包簡介

java.util.regex包中有一個(gè)interface,兩個(gè)class和一個(gè)exception,分別是

MatchResult

Pattern

Matcher

PatternSyntaxException

其中,MatchResult是interface, Matcher實(shí)現(xiàn)了這個(gè)interface。Pattern和Matcher是class,Pattern是一個(gè)正則表達(dá)式經(jīng)編譯后的表現(xiàn)模式,Matcher是一個(gè)狀態(tài)機(jī)器。

Pattern compile(String regex) / compile(String regex, int flags)

靜態(tài)方法,把一個(gè)正則表示式編譯后,生成一個(gè)Pattern對象實(shí)例

Patter p = Pattern.compile("d{2}");
p.pattern();  //返回 d{2}
matcher(CharSequence input)

生成一個(gè)Matcher對象。Matcher類時(shí)不能直接實(shí)例化的,可以通過此方法實(shí)例化一個(gè)Matcher對象,從而進(jìn)行各種操作。

matches(String regex, CharSequence input)

直接使用正則表達(dá)式對輸入的字符串進(jìn)行匹配,匹配成功則返回true

split(CharSequence input) / split(CharSequence input, int limit)

使用正則表示式,進(jìn)行字符串分割

Matcher find() / find(int start) / lookingAt()/matches()

進(jìn)行匹配操作,如果匹配成功,這三個(gè)方法都會(huì)返回true.其中,find()是在源字符串中找出和正則表達(dá)式匹配的字符串。find(int start)是從start位置開始尋找下一個(gè)匹配的字符串。lookingAt()是從源字符串的第一個(gè)字符進(jìn)行匹配。matches()是對整個(gè)源字符串中進(jìn)行匹配,如果都匹配才返回true。

String str="abcd23"

Pattern.matches("w{4}d{2}",str); //快捷方式

Pattern p = Pattern.compile("w{4}d{2}");
Matcher m = p.matcher(str); //和上面的方法等價(jià)
m.matches();
group() / start() / end()

當(dāng)使用find() / find(int start) / lookingAt() / matches()進(jìn)行匹配操作并返回true之后,才可以執(zhí)行者三個(gè)方法獲取更加詳細(xì)的信息。
group():返回匹配到的字符串
start():返回匹配到的字符串在源字符串中的位置
end(): 返回匹配到的字符串的最后一個(gè)字符在源字符串中的位置
另外這幾個(gè)方法分別有一個(gè)重載方法 group(int i) / start(i) / end(i), 分別用于對第i個(gè)捕獲組進(jìn)行對應(yīng)的操作

replaceAll(String replacement) / replaceFirst(String replacement)

替換源字符串中和正則表達(dá)式匹配的子字符串。其中replaceAll是替換所有的,replaceFirst是替換第一個(gè)匹配的。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/70539.html

相關(guān)文章

  • PHP DateTime類計(jì)算早于改歷時(shí)間的坑

    摘要:并且在實(shí)際使用中,早于改歷之前的時(shí)間并沒用格里歷表式的習(xí)慣,都是換成儒略歷表達(dá),所以類這樣的設(shè)計(jì),等于說早于改歷的時(shí)間基本不能用的,還是得自己另外處理一遍。 時(shí)間戳只能計(jì)算 1970 年后的時(shí)間,由于需要計(jì)算更早的日期,發(fā)現(xiàn) PHP 還有提供一個(gè) DateTime類,但在使用中發(fā)現(xiàn)有問題。 1582年,因?yàn)榕f歷精度問題,導(dǎo)致已經(jīng)積累了十天的偏差,,所以此年10月5號~10月14號跳過,...

    李世贊 評論0 收藏0
  • [Leetcode] Implement Trie 實(shí)現(xiàn)前綴樹

    摘要:壓縮前綴樹其實(shí)就是將所有只有一個(gè)子節(jié)點(diǎn)的節(jié)點(diǎn)合并成一個(gè),以減少?zèng)]有意義的類似鏈表式的鏈接。然后我們開始遍歷這個(gè)前綴樹。 Implement Trie Implement a trie with insert, search, and startsWith methods. Note: You may assume that all inputs are consist of lowe...

    jsliang 評論0 收藏0
  • 學(xué)習(xí)筆記: JS字符串

    摘要:我們在中操作字符串,往往是將它轉(zhuǎn)換為數(shù)組,再操作,如字符串的反轉(zhuǎn)字符串常用的一些方法判斷一個(gè)字符串是否以某個(gè)字符串開頭返回在字符串中首次出現(xiàn)的位置從位置開始查找,如果不存在,則返回。如果則查找整個(gè)字符串如同傳進(jìn)了。 我們在js中操作字符串,往往是將它轉(zhuǎn)換為數(shù)組,再操作,如: split().reverse().join() 字符串的反轉(zhuǎn) showImg(https://segmentf...

    CastlePeaK 評論0 收藏0
  • 使用Spring annotation編程的快感

    摘要:創(chuàng)建應(yīng)用對象之間協(xié)作關(guān)系的行為通常稱為裝配中有三種裝配的方法在中顯式配置在中顯式配置隱式的發(fā)現(xiàn)機(jī)制和自動(dòng)裝配這兒要說的就是第三個(gè)自動(dòng)發(fā)現(xiàn)與裝配,它會(huì)帶來編程的快感。 一、前言 Spring的Bean Factory所實(shí)現(xiàn)的IoC輕量級容器,可以很方便地讓大家基于POJO開發(fā)JavaEE應(yīng)用程序。 創(chuàng)建應(yīng)用對象之間協(xié)作關(guān)系的行為通常稱為裝配 Spring中有三種裝配Bean的方法 在X...

    BWrong 評論0 收藏0
  • 正則表達(dá)式

    摘要:但不管是那種匹配都必須保證匹配滿足正則表達(dá)式基本條件。在正則表達(dá)式中,通過分組可以在一個(gè)完整的模式中定義子模式。在同一個(gè)正則表達(dá)式的后部分可以引用前面的子表達(dá)式。 預(yù)定義字符類 .(點(diǎn)好): 匹配除了換行符和其他Unicode行終止符(如回車符)之外的任意字符,等價(jià)于[^ ] w: 匹配任何ASII單字字符,等價(jià)于[a-zA-Z0-9_] W: 匹配任何非ASII單字字符,等價(jià)于[^...

    k00baa 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<