正規表示式特殊構造(非捕獲)

2021-05-25 23:32:06 字數 598 閱讀 5223

1. (?:x)  只是作為非捕獲組,匹配後不會保留在記憶體中。

2. (?=x)  當前位置(字元之間的0寬度縫隙 )後邊出現x。

pattern p = pattern.compile(".(?=a)");

string s = "434a5554a466b";

matcher m = p.matcher(s);

while(m.find()) ")                                   結果為:a55  a46 (先找那個後面為a的字元空間,然後取三個字元。)

3.(?!x)  當前位置(字元之間的0寬度縫隙 )後邊不出現x。

從第乙個數字4之前的空白數起,只要頭乙個字元不是a,就取出三個字元。

("(?!a).")                                   結果為: 434  555  4a4  66b

4.(?<=x)  對應小標題2.只是改變匹配方向,從後向前看(看字元空隙之前是不是出現x)。

(".(?<=a)")                                 結果為:34a   54a

5.(?

正規表示式 非捕獲分組

目前為止,總共介紹了括號的三種用途 分組,將相關的語速歸攏到一起,構成單個元素 多選結構,規定可能出現的多個子表達示 引用分組,將子表示式匹配的文字儲存起來,供之後引用。這三種用途並不是彼此獨立的,而是互相重疊的 單純的分組可以視為 只包含乙個多選分支的多選結構 整個多選結構也會被視為單個元素,可以...

正規表示式之捕獲組 非捕獲組

語法 字元 描述 示例 pattern 匹配pattern並捕獲結果,自動設定組號。abc d 匹配abcd或者abcabcd pattern 或 name pattern 匹配pattern並捕獲結果,設定name為組名。num 對捕獲組的反向引用。其中 num 是乙個正整數。w w 2 1 匹配...

特殊正規表示式

特殊需求表示式 2 網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 3 interneturl a za z s 或 http w w w 4 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 ...