java之正則表達式

\ :將下一字符標記為特殊字符、文本、反向引用或八進制轉(zhuǎn)義符。例如,"n"匹配字符"n"。"\n"匹配換行符。序列"\\"匹配"\","\("匹配"("。


^:匹配輸入字符串開始的位置。如果設(shè)置了?RegExp?對象的?Multiline?屬性,^ 還會與"\n"或"\r"之后的位置匹配。

$:匹配輸入字符串結(jié)尾的位置。如果設(shè)置了?RegExp?對象的?Multiline?屬性,$ 還會與"\n"或"\r"之前的位置匹配。

*:零次或多次匹配前面的字符或子表達式。例如,zo* 匹配"z"和"zoo"。* 等效于 {0,}。

+:一次或多次匹配前面的字符或子表達式。例如,"zo+"與"zo"和"zoo"匹配,但與"z"不匹配。+ 等效于 {1,}。

?:零次或一次匹配前面的字符或子表達式。例如,"do(es)?"匹配"do"或"does"中的"do"。? 等效于 {0,1}。

{n}:n?是非負整數(shù)。正好匹配?n?次。例如,"o{2}"與"Bob"中的"o"不匹配,但與"food"中的兩個"o"匹配。

{n,}:n?是非負整數(shù)。至少匹配?n?次。例如,"o{2,}"不匹配"Bob"中的"o",而匹配"foooood"中的所有 o。"o{1,}"等效于"o+"。"o{0,}"等效于"o*"。

{n,m}:M?和?n?是非負整數(shù),其中?n?<=?m。匹配至少?n?次,至多?m?次。例如,"o{1,3}"匹配"fooooood"中的頭三個 o。'o{0,1}' 等效于 'o?'。注意:您不能將空格插入逗號和數(shù)字之間。

?:當此字符緊隨任何其他限定符(*、+、?、{n}、{n,}、{n,m})之后時,匹配模式是"非貪心的"。"非貪心的"模式匹配搜索到的、盡可能短的字符串,而默認的"貪心的"模式匹配搜索到的、盡可能長的字符串。例如,在字符串"oooo"中,"o+?"只匹配單個"o",而"o+"匹配所有"o"。

.:匹配除"\r\n"之外的任何單個字符。若要匹配包括"\r\n"在內(nèi)的任意字符,請使用諸如"[\s\S]"之類的模式。

(pattern):匹配?pattern?并捕獲該匹配的子表達式。可以使用?$0…$9?屬性從結(jié)果"匹配"集合中檢索捕獲的匹配。若要匹配括號字符 ( ),請使用"\("或者"\)"。

(?:pattern):匹配?pattern?但不捕獲該匹配的子表達式,即它是一個非捕獲匹配,不存儲供以后使用的匹配。這對于用"or"字符 (|) 組合模式部件的情況很有用。例如,'industr(?:y|ies) 是比 'industry|industries' 更經(jīng)濟的表達式。

(?=pattern):執(zhí)行正向預(yù)測先行搜索的子表達式,該表達式匹配處于匹配?pattern?的字符串的起始點的字符串。它是一個非捕獲匹配,即不能捕獲供以后使用的匹配。如,'Windows(?=95|98|NT|2000)' 匹配"Windows 2000"中的"Windows",但不匹配"Windows 3.1"中的"Windows"。預(yù)測先行不占用字符,即發(fā)生匹配后,下一匹配的搜索緊隨上一匹配之后,而不是在組成預(yù)測先行的字符后。

(?!pattern):執(zhí)行反向預(yù)測先行搜索的子表達式,該表達式匹配不處于匹配?pattern?的字符串的起始點的搜索字符串。它是一個非捕獲匹配,即不能捕獲供以后使用的匹配。如,'Windows(?!95|98|NT|2000)' 匹配"Windows 3.1"中的 "Windows",但不匹配"Windows 2000"中的"Windows"。預(yù)測先行不占用字符,即發(fā)生匹配后,下一匹配的搜索緊隨上一匹配之后,而不是在組成預(yù)測先行的字符后。

x|y:匹配?x?或?y。例如,'z|food' 匹配"z"或"food"。'(z|f)ood' 匹配"zood"或"food"。

[xyz]:字符集。匹配包含的任一字符。例如,"[abc]"匹配"plain"中的"a"。

[^xyz]:反向字符集。匹配未包含的任何字符。例如,"[^abc]"匹配"plain"中"p","l","i","n"。

[a-z]:字符范圍。匹配指定范圍內(nèi)的任何字符。例如,"[a-z]"匹配"a"到"z"范圍內(nèi)的任何小寫字母。

[^a-z]:反向范圍字符。匹配不在指定的范圍內(nèi)的任何字符。例如,"[^a-z]"匹配任何不在"a"到"z"范圍內(nèi)的任何字符。

\b:匹配一個字邊界,即字與空格間的位置。例如,"er\b"匹配"never"中的"er",但不匹配"verb"中的"er"。

\B:非字邊界匹配。"er\B"匹配"verb"中的"er",但不匹配"never"中的"er"。

\cx:匹配?x?指示的控制字符。例如,\cM 匹配 Control-M 或回車符。x?的值必須在 A-Z 或 a-z 之間。如果不是這樣,則假定 c 就是"c"字符本身。

\d:數(shù)字字符匹配。等效于 [0-9]。

\D:非數(shù)字字符匹配。等效于 [^0-9]。

\f:換頁符匹配。等效于 \x0c 和 \cL。

\n:換行符匹配。等效于 \x0a 和 \cJ。

\r:匹配一個回車符。等效于 \x0d 和 \cM。

\s:匹配任何空白字符,包括空格、制表符、換頁符等。與 [?\f\n\r\t\v] 等效。

\S:匹配任何非空白字符。與 [^?\f\n\r\t\v] 等效。

\t:制表符匹配。與 \x09 和 \cI 等效。

\v:垂直制表符匹配。與 \x0b 和 \cK 等效。

\w:匹配任何字類字符,包括下劃線。與"[A-Za-z0-9_]"等效。

\W:與任何非單詞字符匹配。與"[^A-Za-z0-9_]"等效。

\xn:匹配?n,此處的?n?是一個十六進制轉(zhuǎn)義碼。十六進制轉(zhuǎn)義碼必須正好是兩位數(shù)長。例如,"\x41"匹配"A"。"\x041"與"\x04"&"1"等效。允許在正則表達式中使用 ASCII 代碼。

\num:匹配?num,此處的?num?是一個正整數(shù)。到捕獲匹配的反向引用。例如,"(.)\1"匹配兩個連續(xù)的相同字符。

\n:標識一個八進制轉(zhuǎn)義碼或反向引用。如果 \n?前面至少有?n?個捕獲子表達式,那么?n?是反向引用。否則,如果?n?是八進制數(shù) (0-7),那么?n?是八進制轉(zhuǎn)義碼。

\nm:標識一個八進制轉(zhuǎn)義碼或反向引用。如果 \nm?前面至少有?nm?個捕獲子表達式,那么?nm?是反向引用。如果 \nm?前面至少有?n?個捕獲,則?n?是反向引用,后面跟有字符?m。如果兩種前面的情況都不存在,則 \nm?匹配八進制值?nm,其中?n和?m?是八進制數(shù)字 (0-7)。

\nml:當?n?是八進制數(shù) (0-3),m?和?l?是八進制數(shù) (0-7) 時,匹配八進制轉(zhuǎn)義碼?nml。

\un:匹配?n,其中?n?是以四位十六進制數(shù)表示的 Unicode 字符。例如,\u00A9 匹配版權(quán)符號 (?)。

根據(jù) Java Language Specification 的要求,Java 源代碼的字符串中的反斜線被解釋為 Unicode 轉(zhuǎn)義或其他字符轉(zhuǎn)義。因此必須在字符串字面值中使用兩個反斜線,表示正則表達式受到保護,不被 Java 字節(jié)碼編譯器解釋。例如,當解釋為正則表達式時,字符串字面值 "\b" 與單個退格字符匹配,而 "\\b" 與單詞邊界匹配。字符串字面值 "\(hello\)" 是非法的,將導(dǎo)致編譯時錯誤;要與字符串 (hello) 匹配,必須使用字符串字面值 "\\(hello\\)"。


表達式意義:

1.字符

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

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

\0n??? 帶有八進制值 0的字符 n (0 <= n <= 7)

\0nn??? 帶有八進制值 0的字符 nn (0 <= n <= 7)

\0mnn??? 帶有八進制值 0的字符 mnn(0 <= m <= 3、0 <= n <= 7)

\xhh??? 帶有十六進制值 0x的字符 hh

\uhhhh??? 帶有十六進制值 0x的字符 hhhh

\t??? 制表符 ('\u0009')

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

\r??? 回車符 ('\u000D')

\f??? 換頁符 ('\u000C')

\a??? 報警 (bell) 符 ('\u0007')

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

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

2.字符類

[abc]??? a、b或 c(簡單類)。例如[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ù)定義字符類(注意反斜杠要寫兩次,例如\d寫為\\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 字符類(僅 US-ASCII)(注意反斜杠要寫兩次,例如\p{Lower}寫為\\p{Lower})

\p{Lower}??? 小寫字母字符:[a-z]。

\p{Upper}??? 大寫字母字符:[A-Z]

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

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

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

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

\p{Punct}??? 標點符號:!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~

\p{Graph}??? 可見字符:[\p{Alnum}\p{Punct}]

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

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

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

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

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

5.java.lang.Character 類(簡單的 java 字符類型)

\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 塊和類別的類

\p{InGreek}??? Greek 塊(簡單塊)中的字符

\p{Lu}??? 大寫字母(簡單類別)

\p{Sc}??? 貨幣符號

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

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

7.邊界匹配器

^??? 行的開頭,請在正則表達式的開始處使用^。例如:^(abc)表示以abc開頭的字符串。注意編譯的時候要設(shè)置參數(shù)MULTILINE,如 Pattern p = Pattern.compile(regex,Pattern.MULTILINE);

$??? 行的結(jié)尾,請在正則表達式的結(jié)束處使用。例如:(^bca).*(abc$)表示以bca開頭以abc結(jié)尾的行。

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

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

\A??? 輸入的開頭

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

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

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

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

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

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

‐單獨的回車符 ('\r')、

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

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

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

\z??? 輸入的結(jié)尾

當編譯模式時,可以設(shè)置一個或多個標志,例如

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

下面六個標志都是支持的:

‐CASE_INSENSITIVE:匹配字符時與大小寫無關(guān),該標志默認只考慮US ASCII字符。

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

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

‐UNIX_LINES: 當在多行模式下匹配^和$時,只將'\n'看作行終止符

‐DOTALL: 當使用此標志時,.符號匹配包括行終止符在內(nèi)的所有字符

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

8.Greedy 數(shù)量詞

X???? X,一次或一次也沒有

X*??? X,零次或多次

X+??? X,一次或多次

X{n}??? X,恰好 n 次

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

X{n,m}??? X,至少 n 次,但是不超過 m 次

9.Reluctant 數(shù)量詞

X????? X,一次或一次也沒有

X*???? X,零次或多次

X+???? X,一次或多次

X{n}???? X,恰好 n 次

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

X{n,m}???? X,至少 n 次,但是不超過 m 次

10.Possessive 數(shù)量詞

X?+??? X,一次或一次也沒有

X*+??? X,零次或多次

X++??? X,一次或多次

X{n}+??? X,恰好 n 次

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

X{n,m}+??? X,至少 n 次,但是不超過 m 次

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

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

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

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

11.Logical 運算符

XY??? X 后跟 Y

X|Y??? X 或 Y

(X)??? X,作為捕獲組。例如(abc)表示把abc作為一個整體進行捕獲

12.Back 引用

\n??? 任何匹配的 nth捕獲組

捕獲組可以通過從左到右計算其開括號來編號。例如,在表達式 ((A)(B(C)))中,存在四個這樣的組:

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

2??? ??? \A

3??? ??? (B(C))

4??? ??? (C)

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

13.引用

\??? Nothing,但是引用以下字符

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

可以匹配ab{|}\\

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

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

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

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

idmsux說明如下:

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

‐d UNIX_LINES : 打開UNIX換行符

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

UNIX下?lián)Q行為\n

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

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

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

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

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

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

(?<=X)??? X,通過零寬度的正 lookbehind。零寬度正后發(fā)斷言。僅當子表達式 X 在 此位置的左側(cè)匹配時才繼續(xù)匹配。例如,(?<=19)99 表示99前面是數(shù)字19,但不捕獲前面的19。(不回溯)

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

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

當表達式為a(?:b|bc)m是可以匹配的,而當表達式是a(?>b|bc)時是不能匹配的,因為當后者匹配到b時,由于已經(jīng)匹配,就跳出了非捕獲組,而不再次對組內(nèi)的字符進行匹配。可以加快速度。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,646評論 6 533
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,595評論 3 418
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,560評論 0 376
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,035評論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,814評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,224評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,301評論 3 442
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,444評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,988評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 40,804評論 3 355
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,998評論 1 370
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,544評論 5 360
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,237評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,665評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,927評論 1 287
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,706評論 3 393
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,993評論 2 374

推薦閱讀更多精彩內(nèi)容

  • 表達式意義: 1.字符 x 字符 x。例如a表示字符a {Java學(xué)習(xí)資料免費分享微信:tangniu5206...
    尚學(xué)先生閱讀 340評論 0 0
  • 在其他語言中,\\表示:我想要在正則表達式中插入一個普通的(字面上的)反斜杠,請不要給它任何特殊的意義。 在 Ja...
    Grail_Oosaki閱讀 479評論 0 0
  • 最近小生,在練習(xí)藍橋杯的習(xí)題,故有同路者共勉! 故:Java正則表達式 1.字符 x 字符 x。例如a表示字...
    HowieW閱讀 980評論 0 1
  • 正則表達式是一種文本模式,包括普通字符(例如,a 到 z 之間的字母)和特殊字符(稱為“元字符”)。模式描述在搜索...
    Ten_Minutes閱讀 327評論 0 0
  • “亞古獸究極進化,戰(zhàn)斗暴龍獸。”當你們聽到這句熟悉的臺詞時,是否勾起了你童年的回憶呢?我想,每個人的童年里一定都住...
    R蒟蒻閱讀 569評論 1 3