中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java正則表達式的知識點有哪些

發布時間:2022-02-07 14:45:22 來源:億速云 閱讀:135 作者:iii 欄目:開發技術

這篇文章主要介紹“java正則表達式的知識點有哪些”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“java正則表達式的知識點有哪些”文章能幫助大家解決問題。

字符
x字符 x
\\反斜線字符
\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轉義符 ('\u001B')
\cx對應于 x 的控制符
字符類
[abc]ab 或 c(簡單類)
[^abc]任何字符,除了 ab 或 c(否定)
[a-zA-Z]a 到 z 或 A 到 Z,兩頭的字母包括在內(范圍)
[a-d[m-p]]a 到 d 或 m 到 p[a-dm-p](并集)
[a-z&&[def]]de 或 f(交集)
[a-z&&[^bc]]a 到 z,除了 b 和 c[ad-z](減去)
[a-z&&[^m-p]]a 到 z,而非 m 到 p[a-lq-z](減去)
預定義字符類
.任何字符(與行結束符可能匹配也可能不匹配)
\d數字:[0-9]
\D非數字: [^0-9]
\s空白字符:[ \t\n\x0B\f\r]
\S非空白字符:[^\s]
\w單詞字符:[a-zA-Z_0-9]
\W非單詞字符:[^\w]
Greedy 數量詞
X?X,一次或一次也沒有
X*X,零次或多次
X+X,一次或多次
X{n}X,恰好 n 次
X{n,}X,至少 n 次
X{n,m}X,至少 n 次,但是不超過 m 次
Reluctant 數量詞
X??X,一次或一次也沒有
X*?X,零次或多次
X+?X,一次或多次
X{n}?X,恰好 n 次
X{n,}?X,至少 n 次
X{n,m}?X,至少 n 次,但是不超過 m 次

例子 

package com.xiaostudy;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MyPattern {
    public static void main(String[] args) {
    }
    private static void demo_Reluctant() {
        // 檢驗規則,單個字母,“+”表示:0次或多次,后面多加一個“?”與不加的區別是:不加的話表示只匹配一次,加的話表示匹配多次
        String regex = ".+?222";
        // 要檢驗的對象
        String str = "xx222xx222xx222xx222";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        while (matcher.find())
            System.out.println(matcher.start() + "=====" + matcher.end());
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_aBAb() {
        // 檢驗規則,字母集,“+”表示:0個或多個
        String regex = "[abcd]+";
        // 要檢驗的對象
        String str = "adbcdbaDACDBDAC";
        // 編譯正則表達式,不區分大小寫
        Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_abcd() {
        // 檢驗規則,字母集,“+”表示:0個或多個
        String regex = "[abcd]+";
        // 要檢驗的對象
        String str = "adbcdabdcddbadbc";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_123no() {
        // 檢驗規則,非數字集,“+”表示:0個或多個
        String regex = "[^1-9]+";// 等價于\\D+
        // 要檢驗的對象
        String str = "+sdoi#$@%@#";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_123() {
        // 檢驗規則,數字集,“+”表示:0個或多個
        String regex = "[1-9]+";// 等價于\\d+
        // 要檢驗的對象
        String str = "123";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_2() {
        // 檢驗規則,單個數字
        String regex = "[1-9]";
        // 要檢驗的對象
        String str = "2";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_nm() {
        // 檢驗規則,單個字母,“{n,m}”表示:出現n次到m次之間,包括他們本身
        String regex = "x{3,5}";
        // 要檢驗的對象
        String str = "xxxxx";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_n0() {
        // 檢驗規則,單個字母,“{n,}”表示:出現n次或以上
        String regex = "x{3,}";
        // 要檢驗的對象
        String str = "xxxx";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_n() {
        // 檢驗規則,單個字母,“{n}”表示:就出現n次
        String regex = "x{3}";
        // 要檢驗的對象
        String str = "xxx";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_xxx0() {
        // 檢驗規則,單個字母,“+”表示:0次或多次
        String regex = "x+";
        // 要檢驗的對象
        String str = "xxx";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_xxx() {
        // 檢驗規則,單個字母,“*”表示:一次或多次
        String regex = "x*";
        // 要檢驗的對象
        String str = "xxx";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_x_01() {
        // 檢驗規則,單個字母,“?”表示:一次或一次都沒有
        String regex = "x?";
        // 要檢驗的對象
        String str = "x";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_00() {
        // 檢驗規則,單個字母,“.”表示:任何字符
        String regex = ".";
        // 要檢驗的對象
        String str = "x";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
    private static void demo_x() {
        // 檢驗規則,單個字母
        String regex = "x";// 等價于\\w、[a-z]
        // 要檢驗的對象
        String str = "x";
        // 編譯正則表達式
        Pattern pattern = Pattern.compile(regex);
        // 創建匹配器,給定輸入與此模式的匹配
        Matcher matcher = pattern.matcher(str);
        // 匹配,返回結果
        boolean b = matcher.matches();
        if (b)
            System.out.println(true);
        else
            System.out.println(false);
    }
}

關于“java正則表達式的知識點有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

米易县| 剑河县| 余江县| 海城市| 铅山县| 平江县| 阿坝| 株洲县| 新巴尔虎右旗| 陵水| 分宜县| 喀喇| 阳新县| 宁明县| 永胜县| 岳普湖县| 浙江省| 攀枝花市| 彭阳县| 大同县| 凌海市| 石景山区| 阳谷县| 安达市| 始兴县| 上虞市| 白城市| 余姚市| 三河市| 金阳县| 阿拉善右旗| 富裕县| 泊头市| 镇康县| 司法| 布拖县| 长治县| 松滋市| 新平| 苏尼特左旗| 白玉县|