正则表达式

public class TestRexExp {
    public static void main(String[] args) {
        String patternStr="^\d*$"; //这里写正则表达式
        String abc = "4444";       //这里写所要验证的字符串
        if (Pattern.matches(patternStr, abc)) {
            System.out.println("符合");
        } else {
            System.out.println("不符合");
        }
    }
}

(整数(integer)就是像-3,-2,-1,0,1,2,3,10等这样的数。)

和正整数统称为自然数)

正整数、零与负整数构成整数系)

个人理解不来百度百科上面的意思

w 等价于[A-Za-z0-9_](大小写英文、数字以及下划线)
W w的反集


匹配任意次数字:^[0-9]*$   ^d*$
匹配n位数字:^d{n}$
匹配至少n位数字:^d{n,}$
匹配m-n位的数字:^d{m,n}$
匹配零和正整数:0|^+?[1-9][0-9]*$
匹配正整数:^+?[1-9][0-9]*$
匹配负整数:^-[1-9][0-9]*$
整数:^-?d+|+d+$
匹配有两位小数的正实数:^(0|[1-9]*)(.d{2}$)?    ^(0|[1-9]*)(.[0-9]{2}$)?
匹配有1-3位小数的正实数:^(0|[1-9]*)(.d{1-3}$)?    ^(0|[1-9]*)(.[0-9]{1-3}$)?
匹配长度为3的字符:^.{3}$    (".":点,匹配除“ ”之外的任何单个字符。要匹配包括“ ”在内的任何字符,请使用像“[sS]”的模式。)
匹配由26个英文字母组成的字符串:^[A-Za-z]+$
匹配由26个大写英文字母组成的字符串:^[A-Z]+$
匹配由26个小写英文字母组成的字符串:^[a-z]+$
匹配由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
匹配由数字、26个英文字母或者下划线组成的字符串:^w+$(小写w,比上面的那个多了一个下划线)
匹配用户密码:^[a-zA-Z]w{5,17}$ 正确格式为:以字母开头,长度在6-18之间,只能包含字符、数字和下划线。
匹配是否只有汉字:^[u4e00-u9fa5]+$       ^[u4e00-u9fa5]{1,}$
匹配身份证号(15位或18位数字):^d{15}|d{18}$
匹配一年的12个月(“01”-“09”和“10”“11”“12”):^(0?[1-9]|1[0-2])$
匹配一个月的31天(01到31):^((0?[1-9])|((1|2)[0-9])|30|31)$
整数:^-?d+|+d+$
匹配有两位小数的正实数:^(0|[1-9]*)(.d{2}$)?    ^(0|[1-9]*)(.[0-9]{2}$)?
匹配有1-3位小数的正实数:^(0|[1-9]*)(.d{1-3}$)?    ^(0|[1-9]*)(.[0-9]{1-3}$)?
匹配长度为3的字符:^.{3}$    (".":点,匹配除“ ”之外的任何单个字符。要匹配包括“ ”在内的任何字符,请使用像“[sS]”的模式。)
匹配由26个英文字母组成的字符串:^[A-Za-z]+$
匹配由26个大写英文字母组成的字符串:^[A-Z]+$
匹配由26个小写英文字母组成的字符串:^[a-z]+$
匹配由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
匹配由数字、26个英文字母或者下划线组成的字符串:^w+$(小写w,比上面的那个多了一个下划线)
匹配用户密码:^[a-zA-Z]w{5,17}$ 正确格式为:以字母开头,长度在6-18之间,只能包含字符、数字和下划线。
匹配是否只有汉字:^[u4e00-u9fa5]+$       ^[u4e00-u9fa5]{1,}$
匹配身份证号(15位或18位数字):^d{15}|d{18}$

匹配yyyyMMdd:^(d{1,4})(([0][1-9])|10|11|12)([1,2][0-9]|30|31)$   

                            ^([0-9]{1,4})(([0][1-9])|10|11|12)([1,2][0-9]|30|31)$  (好似第二种形式更易于理解)

原文地址:https://www.cnblogs.com/ericguoxiaofeng/p/8012765.html