欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

java的正則表達(dá)式介紹

這篇文章將為大家詳細(xì)講解有關(guān)java的正則表達(dá)式,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)長(zhǎng)期為超過(guò)千家客戶(hù)提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為莒南企業(yè)提供專(zhuān)業(yè)的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作,莒南網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

1、字符

x 字符 x。例如a表示字符a

\\ 反斜線字符。在書(shū)寫(xiě)時(shí)要寫(xiě)為\\\\。(注意:因?yàn)閖ava在第一次解析時(shí),把\\\\解析成正則表達(dá)式\\,在第二次解析時(shí)再解析為\,所以凡是不是1.1列舉到的轉(zhuǎn)義字符,包括1.1的\\,而又帶有\(zhòng)的都要寫(xiě)兩次)

\0n 帶有八進(jìn)制值 0的字符 n (0 \0nn 帶有八進(jìn)制值 0的字符 nn (0 \0mnn 帶有八進(jìn)制值 0的字符 mnn(0 \xhh 帶有十六進(jìn)制值 0x的字符 hh

\uhhhh 帶有十六進(jìn)制值 0x的字符 hhhh

\t 制表符 ('\u0009')

\n 新行(換行)符 ('\u000A')

\r 回車(chē)符 ('\u000D')

\f 換頁(yè)符 ('\u000C')

\a 報(bào)警 (bell) 符 ('\u0007')

\e 轉(zhuǎn)義符 ('\u001B')

\cx 對(duì)應(yīng)于 x 的控制符

2、字符類(lèi)

[abc] a、b或 c(簡(jiǎn)單類(lèi))。例如[egd]表示包含有字符e、g或d。

[^abc] 任何字符,除了 a、b或 c(否定)。例如[^egd]表示不包含字符e、g或d。

[a-zA-Z] a到 z或 A到 Z,兩頭的字母包括在內(nèi)(范圍)

[a-d[m-p]] a到 d或 m到 p:[a-dm-p](并集)

[a-z&&[def]] d、e或 f(交集)

[a-z&&[^bc]] a到 z,除了 b和 c:[ad-z](減去)

[a-z&&[^m-p]] a到 z,而非 m到 p:[a-lq-z](減去)

3、預(yù)定義字符類(lèi)(注意反斜杠要寫(xiě)兩次,例如\d寫(xiě)為\\d)任何字符(與行結(jié)束符可能匹配也可能不匹配)

\d 數(shù)字:[0-9]

\D 非數(shù)字: [^0-9]

\s 空白字符:[ \t\n\x0B\f\r]

\S 非空白字符:[^\s]

\w 單詞字符:[a-zA-Z_0-9]

\W 非單詞字符:[^\w]

4.POSIX 字符類(lèi)(僅 US-ASCII)(注意反斜杠要寫(xiě)兩次,例如\p{Lower}寫(xiě)為\\p{Lower})

\p{Lower} 小寫(xiě)字母字符:[a-z]。

\p{Upper} 大寫(xiě)字母字符:[A-Z]

\p{ASCII} 所有 ASCII:[\x00-\x7F]

\p{Alpha} 字母字符:[\p{Lower}\p{Upper}]

\p{Digit} 十進(jìn)制數(shù)字:[0-9]

\p{Alnum} 字母數(shù)字字符:[\p{Alpha}\p{Digit}]

\p{Punct} 標(biāo)點(diǎn)符號(hào):!"#$%&'()*+,-./:;?@[\]^_`{|}~

\p{Graph} 可見(jiàn)字符:[\p{Alnum}\p{Punct}]

\p{Print} 可打印字符:[\p{Graph}\x20]

\p{Blank} 空格或制表符:[ \t]

\p{Cntrl} 控制字符:[\x00-\x1F\x7F]

\p{XDigit} 十六進(jìn)制數(shù)字:[0-9a-fA-F]

\p{Space} 空白字符:[ \t\n\x0B\f\r]

5.java.lang.Character 類(lèi)(簡(jiǎn)單的 java 字符類(lèi)型)

\p{javaLowerCase} 等效于 java.lang.Character.isLowerCase()

\p{javaUpperCase} 等效于 java.lang.Character.isUpperCase()

\p{javaWhitespace} 等效于 java.lang.Character.isWhitespace()

\p{javaMirrored} 等效于 java.lang.Character.isMirrored()

6.Unicode 塊和類(lèi)別的類(lèi)

\p{InGreek} Greek 塊(簡(jiǎn)單塊)中的字符

\p{Lu} 大寫(xiě)字母(簡(jiǎn)單類(lèi)別)

\p{Sc} 貨幣符號(hào)

\P{InGreek} 所有字符,Greek 塊中的除外(否定)

[\p{L}&&[^\p{Lu}]] 所有字母,大寫(xiě)字母除外(減去)

7、邊界匹配器

^ 行的開(kāi)頭,請(qǐng)?jiān)谡齽t表達(dá)式的開(kāi)始處使用^。例如:^(abc)表示以abc開(kāi)頭的字符串。注意編譯的時(shí)候要設(shè)置參數(shù)MULTILINE,如 Pattern p = Pattern.compile(regex,Pattern.MULTILINE);

$ 行的結(jié)尾,請(qǐng)?jiān)谡齽t表達(dá)式的結(jié)束處使用。例如:(^bca).*(abc$)表示以bca開(kāi)頭以abc結(jié)尾的行。

\b 單詞邊界。例如\b(abc)表示單詞的開(kāi)始或結(jié)束包含有abc,(abcjj、jjabc 都可以匹配)

\B 非單詞邊界。例如\B(abc)表示單詞的中間包含有abc,(jjabcjj匹配而jjabc、abcjj不匹配)

\A 輸入的開(kāi)頭

\G 上一個(gè)匹配的結(jié)尾(個(gè)人感覺(jué)這個(gè)參數(shù)沒(méi)什么用)。例如\\Gdog表示在上一個(gè)匹配結(jié)尾處查找dog如果沒(méi)有的話(huà)則從開(kāi)頭查找,注意如果開(kāi)頭不是dog則不能匹配。

\Z 輸入的結(jié)尾,僅用于最后的結(jié)束符(如果有的話(huà))

行結(jié)束符 是一個(gè)或兩個(gè)字符的序列,標(biāo)記輸入字符序列的行結(jié)尾。

以下代碼被識(shí)別為行結(jié)束符:

‐新行(換行)符 ('\n')、

‐后面緊跟新行符的回車(chē)符 ("\r\n")、

‐單獨(dú)的回車(chē)符 ('\r')、

‐下一行字符 ('\u0085')、

‐行分隔符 ('\u2028') 或

‐段落分隔符 ('\u2029)。

\z 輸入的結(jié)尾

當(dāng)編譯模式時(shí),可以設(shè)置一個(gè)或多個(gè)標(biāo)志,例如

Pattern pattern = Pattern.compile(patternString,Pattern.CASE_INSENSITIVE + Pattern.UNICODE_CASE);

下面六個(gè)標(biāo)志都是支持的:

‐CASE_INSENSITIVE:匹配字符時(shí)與大小寫(xiě)無(wú)關(guān),該標(biāo)志默認(rèn)只考慮US ASCII字符。

‐UNICODE_CASE:當(dāng)與CASE_INSENSITIVE結(jié)合時(shí),使用Unicode字母匹配

‐MULTILINE:^和$匹配一行的開(kāi)始和結(jié)尾,而不是整個(gè)輸入

‐UNIX_LINES: 當(dāng)在多行模式下匹配^和$時(shí),只將'\n'看作行終止符

‐DOTALL: 當(dāng)使用此標(biāo)志時(shí),.符號(hào)匹配包括行終止符在內(nèi)的所有字符

‐CANON_EQ: 考慮Unicode字符的規(guī)范等價(jià)

8、Greedy 數(shù)量詞

X? X,一次或一次也沒(méi)有

X* X,零次或多次

X+ X,一次或多次

X{n} X,恰好 n 次

X{n,} X,至少 n 次

X{n,m} X,至少 n 次,但是不超過(guò) m 次

9.Reluctant 數(shù)量詞

X?? X,一次或一次也沒(méi)有

X*? X,零次或多次

X+? X,一次或多次

X{n}? X,恰好 n 次

X{n,}? X,至少 n 次

X{n,m}? X,至少 n 次,但是不超過(guò) m 次

10、Possessive 數(shù)量詞

X?+ X,一次或一次也沒(méi)有

X*+ X,零次或多次

X++ X,一次或多次

X{n}+ X,恰好 n 次

X{n,}+ X,至少 n 次

X{n,m}+ X,至少 n 次,但是不超過(guò) m 次

Greedy,Reluctant,Possessive的區(qū)別在于:(注意僅限于進(jìn)行.等模糊處理時(shí))

greedy量 詞被看作“貪婪的”,因?yàn)樗谝淮尉妥x入整個(gè)被模糊匹配的字符串。如果第一個(gè)匹配嘗試(整個(gè)輸入字符串)失敗,匹配器就會(huì)在被匹配字符串中的最后一位后退一個(gè)字符并且再次嘗試,重復(fù)這個(gè)過(guò)程,直到找到匹配或者沒(méi)有更多剩下的字符可以后退為止。根據(jù)表達(dá)式中使用的量詞,它最后試圖匹配的內(nèi)容是1 個(gè)或者0個(gè)字符。

但是,reluctant量詞采取相反的方式:它們從被匹配字符串的開(kāi)頭開(kāi)始,然后逐步地一次讀取一個(gè)字符搜索匹配。它們最后試圖匹配的內(nèi)容是整個(gè)輸入字符串。

最后,possessive量詞總是讀完整個(gè)輸入字符串,嘗試一次(而且只有一次)匹配。和greedy量詞不同,possessive從不后退。

11、Logical 運(yùn)算符

XY X 后跟 Y

X|Y X 或 Y

(X) X,作為捕獲組。例如(abc)表示把a(bǔ)bc作為一個(gè)整體進(jìn)行捕獲

12、Back 引用

\n 任何匹配的 nth捕獲組

捕獲組可以通過(guò)從左到右計(jì)算其開(kāi)括號(hào)來(lái)編號(hào)。例如,在表達(dá)式 ((A)(B(C)))中,存在四個(gè)這樣的組:

1 ((A)(B(C)))

2 \A

3 (B(C))

4 (C)

在表達(dá)式中可以通過(guò)\n來(lái)對(duì)相應(yīng)的組進(jìn)行引用,例如(ab)34\1就表示ab34ab,(ab)34(cd)\1\2就表示ab34cdabcd。

13、引用
\ Nothing,但是引用以下字符

\Q Nothing,但是引用所有字符,直到 \E。QE之間的字符串會(huì)原封不動(dòng)的使用(1.1中轉(zhuǎn)義字符的除外)。例如, ab\\Q{|}\\\\E
可以匹配ab{|}\\

\E Nothing,但是結(jié)束從 \Q開(kāi)始的引用

14、特殊構(gòu)造(非捕獲)

(?:X) X,作為非捕獲組

(?idmsux-idmsux) Nothing,但是將匹配標(biāo)志由 on 轉(zhuǎn)為 off。比如:表達(dá)式 (?i)abc(?-i)def 這時(shí),(?i) 打開(kāi)不區(qū)分大小寫(xiě)開(kāi)關(guān),abc 匹配

idmsux說(shuō)明如下:

‐i CASE_INSENSITIVE :US-ASCII 字符集不區(qū)分大小寫(xiě)。(?i)

‐d UNIX_LINES : 打開(kāi)UNIX換行符

‐m MULTILINE :多行模式(?m)

UNIX下?lián)Q行為

WINDOWS下?lián)Q行為\r\n(?s)

‐u UNICODE_CASE : Unicode 不區(qū)分大小寫(xiě)。(?u)

‐x COMMENTS :可以在pattern里面使用注解,忽略pattern里面的whitespace,以及"#"一直到結(jié)尾(#后面為注解)。(?x)例如(?x)abc#asfsdadsa可以匹配字符串a(chǎn)bc

(?idmsux-idmsux:X) X,作為帶有給定標(biāo)志 on - off 的非捕獲組。與上面的類(lèi)似,上面的表達(dá)式,可以改寫(xiě)成為:(?i:abc)def,或者 (?i)abc(?-i:def)

(?=X) X,通過(guò)零寬度的正 lookahead。零寬度正先行斷言,僅當(dāng)子表達(dá)式 X 在 此位置的右側(cè)匹配時(shí)才繼續(xù)匹配。例如,\w+(?=\d) 表示字母后面跟數(shù)字,但不捕獲數(shù)字(不回溯)

(?!X) X,通過(guò)零寬度的負(fù) lookahead。零寬度負(fù)先行斷言。僅當(dāng)子表達(dá)式 X 不在 此位置的右側(cè)匹配時(shí)才繼續(xù)匹配。例如,\w+(?!\d) 表示字母后面不跟數(shù)字,且不捕獲數(shù)字。

(? (? (?>X) X,作為獨(dú)立的非捕獲組(不回溯)

(?=X)與(?>X)的區(qū)別在于(?>X)是不回溯的。例如被匹配的字符串為abcm

當(dāng)表達(dá)式為a(?:b|bc)m是可以匹配的,而當(dāng)表達(dá)式是a(?>b|bc)時(shí)是不能匹配的,因?yàn)楫?dāng)后者匹配到b時(shí),由于已經(jīng)匹配,就跳出了非捕獲組,而不再次對(duì)組內(nèi)的字符進(jìn)行匹配??梢约涌焖俣取?/p>

關(guān)于java的正則表達(dá)式介紹就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

標(biāo)題名稱(chēng):java的正則表達(dá)式介紹
文章轉(zhuǎn)載:http://aaarwkj.com/article16/jesjdg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站收錄、網(wǎng)頁(yè)設(shè)計(jì)公司、外貿(mào)建站服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)
国产成人国产精品国产三级| 日韩精品一区二区三区人妻视频| 中文字幕一区二区三区三级 | 国产夫妻自拍一级黄片| 少妇高潮视频在线观看| 丝袜美腿亚洲欧美日韩| 在线看日本十八禁网站| 免费在线观看一级av| 成人性生活毛片免费视频| 18禁黄网站禁片免费视频| 日本精品在线亚洲国产欧美| 欧美亚洲尤物久久精品| 国产免费成人午夜免费视频| 五月天丁香婷婷狠狠狠| 国产一级特黄大片特爽| 色呦呦视频在线免费观看| 中文字幕国产精品经典三级| 成人性生活视频免费中文版| 中文日韩av在线免费播放| 久久九特黄的免费大片| 传媒精品视频在线观看| 欧美日韩国产91在线| 亚洲精品在线观看午夜福利| 国产一区二区三区百合| 日韩最新人妻在线不卡| 中文字幕中出亚洲精品| 中文字幕人妻熟人妻熟丝| 精品人妻一区二区在线99| 午夜精品视频免费91| 国产一级特黄大片特爽| 精品欧美一区二区三区在线| 成人黄色大片免费看| 麻豆资源视频在线观看| 久热视频这里只有精品99| 日本一区二区国产在线| 81精品国产综合久久精品伦理| 精品人妻一区二区三区不卡| 亚洲精品国产精品乱码不卞| 亚洲欧美韩国日本成人综合| 91伊人激情综合久久| 日本免费在线不卡一区二区|