zoukankan      html  css  js  c++  java
  • 正则婊达式

    正则表达式

    描述一段规则 看我们现有的东西是否匹配这段规则 (正则表达式不属于JAVA )

    pattern和matcher

    compile(String regex)

    将给定的正则表达式编译到模式中。

    Pattern p = Pattern.compile("1[3578]\d{9}");
    Matcher m = p.matcher("13999988888");
    System.out.println(m.matches());

    ^ 匹配字符串的开始

    $ 匹配字符串的结束

    s 任何空白字符

    S 任何非空白字符

    d 匹配一个数字字符,等价于[0-9]

    D 除了数字之外的任何字符,等价于[^0-9]

    w 匹配一个数字、下划线或字母字符,等价于[A-Za-z0-9_]

    W 任何非单字字符,等价于[^a-zA-z0-9_]

    . 除了换行符之外的任意字符

    {n} 匹配前一项n次

    {n,} 匹配前一项n次,或者多次

    {n,m} 匹配前一项至少n次,但是不能超过m次

    * 匹配前一项0次或多次,等价于{0,}

    + 匹配前一项1次或多次,等价于{1,}

    ? 匹配前一项0次或1次,也就是说前一项是可选的,等价于{0,1}

    x|y

    匹配x或y。例如,“z|food”能匹配“z”或“food”。“(z|f)ood”则匹配“zood”或“food”。

    [xyz]

    字符集合。匹配所包含的任意一个字符。例如,“[abc]”可以匹配“plain”中的“a”。

    [a-z]

    字符范围。匹配指定范围内的任意字符。例如,“[a-z]”可以匹配“a”到“z”范围内的任意小写字母字符。 注意:只有连字符在字符组内部时,并且出现在两个字符之间时,才能表示字符的范围; 如果出字符组的开头,则只能表示连字符本身.

    (pattern)

    匹配pattern并获取这一匹配。所获取的匹配可以从产生的Matches集合得到,在VBScript中使用SubMatches集合,在JScript中则使用$0…$9属性。要匹配圆括号字符,请使用“(”或“)”。

    邮箱

    Pattern p = Pattern.compile("\w{5,15}@(qq|163|126|gmail).(com|cn)");
    Matcher m = p.matcher("lxhxqx9109@163.com");
    System.out.println(m.matches());

    身份证 //1920年1月1日-2016年11月24日

    Pattern p = Pattern.compile("\d{6}((19[2-9][0-9]|20[0-1][0-5])((01|03|05|07|08|10|12)([1-2][0-9]|0[1-9]|3[0-1])|(04|06|09|11)([1-2][0-9]|0[1-9])|02(1[0-9]|0[1-9]|2[0-8]))|2016((01|03|05|07|08|10)([1-2][0-9]|0[1-9]|3[0-1])|(04|06|09)([1-2][0-9]|0[1-9])|02(1[0-9]|0[1-9]|2[0-8])|11(0[1-9]|1[0-9]|2[0-4])))\d{3}([0-9xX])");
    Matcher m = p.matcher("51060320161032293x");
    System.out.println(m.matches());
  • 相关阅读:
    徐汉彬:Web系统大规模并发——电商秒杀与抢购
    编程语言十一月份排行
    windows C 与 linux C区别?
    inux 下c/c++ 连接mysql数据库全过程-----已经通过验证
    MySql可视化工具MySQL Workbench使用教程
    C语言连接数据库
    C语言连接MySql数据库
    C语言位运算
    python-函数
    python2.x和python3.x共存
  • 原文地址:https://www.cnblogs.com/tangyizhuo/p/6099539.html
Copyright © 2011-2022 走看看