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

    1.1.1 正则表达式概述

    正则表达式是专门解决字符串规则匹配的工具。

    正则表达式也是一个字符串,用来定义匹配规则。

    参照帮助文档,在Pattern类中有简单的规则定义,可以结合字符串类的方法使用。

           

    1.1.2 正则表达式匹配规则

    参照帮助文档,在Pattern类中有正则表达式的的规则定义,正则表达式中明确区分大小写字母。我们来学习语法规则。

    正则表达式的语法规则:

    字符:x

    含义:代表的是字符x

    例如:匹配规则为 "a",那么需要匹配的字符串内容就是 ”a”

     

    字符:\\

    含义:代表的是反斜线字符'\'

    例如:匹配规则为"\\" ,那么需要匹配的字符串内容就是 ”\”

     

    字符类:[abc]

    含义:代表的是字符a、b 或 c

    例如:匹配规则为"[abc]" ,那么需要匹配的内容就是字符a,或者字符b,或字符c的一个

     

    字符类:[^abc]

    含义:代表的是除了 a、b 或 c以外的任何字符

    例如:匹配规则为"[^abc]",那么需要匹配的内容就是不是字符a,或者不是字符b,或不是字符c的任意一个字符

     

    字符类:[a-zA-Z]

    含义:代表的是a 到 z 或 A 到 Z,两头的字母包括在内

    例如:匹配规则为"[a-zA-Z]",那么需要匹配的是一个大写或者小写字母

     

    字符类:[0-9]

    含义:代表的是 0到9数字,两头的数字包括在内

    例如:匹配规则为"[0-9]",那么需要匹配的是一个数字

     

    字符类:[a-zA-Z_0-9]

    含义:代表的字母或者数字或者下划线(即单词字符)

    例如:匹配规则为" [a-zA-Z_0-9] ",那么需要匹配的是一个字母或者是一个数字或一个下滑线

     

    预定义字符类:.

    含义:代表的是任何字符

    例如:匹配规则为" . ",那么需要匹配的是一个任意字符。如果,就想使用 . 的话,使用匹配规则"\\."来实现

     

    预定义字符类:\d [0-9]

    含义:代表的是 0到9数字,两头的数字包括在内,相当于[0-9]

    例如:匹配规则为"\d ",那么需要匹配的是一个数字

     

    预定义字符类:\w  [a-zA-Z_0-9]

    含义:代表的字母或者数字或者下划线(即单词字符),相当于[a-zA-Z_0-9]

    例如:匹配规则为"\w ",,那么需要匹配的是一个字母或者是一个数字或一个下滑线

    数量词:X?

    含义:代表的是X出现一次或一次也没有

    例如:匹配规则为"a?",那么需要匹配的内容是一个字符a,或者一个a都没有

     

    数量词:X*

    含义:代表的是X出现零次或多次

    例如:匹配规则为"a*" ,那么需要匹配的内容是多个字符a,或者一个a都没有

     

    数量词:X+

    含义:代表的是X出现一次或多次

    例如:匹配规则为"a+",那么需要匹配的内容是多个字符a,或者一个a

     

    数量词:X{n}

    含义:代表的是X出现恰好 n 次

    例如:匹配规则为"a{5}",那么需要匹配的内容是5个字符a

     

    数量词:X{n,}

    含义:代表的是X出现至少 n 次

    例如:匹配规则为"a{5, }",那么需要匹配的内容是最少有5个字符a

     

    数量词:X{n,m}

    含义:代表的是X出现至少 n 次,但是不超过 m 次

    例如:匹配规则为"a{5,8}",那么需要匹配的内容是有5个字符a 到 8个字符a之间

    public class RedexDemo {
    	/*
    	 * 	校验qq号码
    	* 		要求必须是5-15位
    	* 		0不能开头
    	* 		必须都是数字
    		
    		正则表达式:就是一套规则,可以用于匹配字符串
    		
    		boolean matches(String regex) :
    		判断当前字符串是否匹配指定的正则表达式,如果匹配则返回true,否则返回false
    	* 
    	*  
    	 */
    	public static void main(String[] args) {
    		String qq="123456";
    		/*boolean flag = checkQQ(qq);
    		System.out.println(flag);*/
    		
    		
    		boolean flag = qq.matches("[1-9][0-9]{4,14}");
    		System.out.println(flag);
    		
    	}
    }
    

     

    一纸高中万里风,寒窗读破华堂空。 莫道长安花看尽,由来枝叶几相同?
  • 相关阅读:
    不同长度的数据进行位运算
    Linux的sleep()和usleep()的使用和区别
    linux inode已满解决方法
    Debian 系统修改语言设置成英文
    IIS设置问题
    Ajax实现跨域访问的三种方法
    HTML--备忘点
    C#基础---值类型和引用类型
    dapper.net框架使用随笔
    WebService的搭建,部署,简单应用和实体类结合使用
  • 原文地址:https://www.cnblogs.com/byczyz/p/11146598.html
Copyright © 2011-2022 走看看