【Java】正則表達式(不)包含某個字符串,(不)以某字符串開頭

 一、包含

正則表達式如下,包含aaa或bbb爲例:

^.*(aaa|bbb).*$

測試一下

    public static void main(String[] args) {
        System.out.println(Pattern.matches("^.*(aaa|bbb).*$", "aaa"));
        System.out.println(Pattern.matches("^.*(aaa|bbb).*$", " aaa "));
        System.out.println(Pattern.matches("^.*(aaa|bbb).*$", "aabbbddd"));
        System.out.println(Pattern.matches("^.*(aaa|bbb).*$", "aabbdd"));
    }

結果如下:

true
true
true
false
 

二、不包含

正則表達式如下,不包含hello爲例:

^((?!hello).)*$

測試一下

    public static void main(String[] args) {
        System.out.println(Pattern.matches("^((?!hello).)*$", "olleh"));
        System.out.println(Pattern.matches("^((?!hello).)*$", "qeqeq"));
        System.out.println(Pattern.matches("^((?!hello).)*$", "qeqeqhell"));
        System.out.println(Pattern.matches("^((?!hello).)*$", "qeqeq hell"));
        System.out.println(Pattern.matches("^((?!hello).)*$", "qeqeqh e l l o"));
        System.out.println(Pattern.matches("^((?!hello).)*$", "qeqeqhello"));
        System.out.println(Pattern.matches("^((?!hello).)*$", "hello"));
        System.out.println(Pattern.matches("^((?!hello).)*$", "qeqeq hello"));
        System.out.println(Pattern.matches("^((?!hello).)*$", "qeqeq hello asdfsa"));
    }

結果如下:

true
true
true
true
true
false
false
false
false

三、以xxx開頭

正則表達式如下,以aaa開頭:

^aaa.*

測試一下

    public static void main(String[] args) {
        System.out.println(Pattern.matches("^aaa.*", "aaabbb"));
        System.out.println(Pattern.matches("^aaa.*", "aaa bbb"));
        System.out.println(Pattern.matches("^aaa.*", " aaa bbb"));
        System.out.println(Pattern.matches("^aaa.*", "bbbaaa"));
    }

結果如下:

true
true
false
false
 

四、不以xxx開頭

正則表達式如下,不以aaa開頭:

^(?!aaa).*$

測試一下

    public static void main(String[] args) {
        System.out.println(Pattern.matches("^(?!aaa).*$", "aaabbb"));
        System.out.println(Pattern.matches("^(?!aaa).*$", "aaa bbb"));
        System.out.println(Pattern.matches("^(?!aaa).*$", " aaa bbb"));
        System.out.println(Pattern.matches("^(?!aaa).*$", "bbbaaa"));
    }

結果如下:

false
false
true
true

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章