java正则 学习整理

 java 正则
    java正则是从 javase 1.4版本开始添加的新特征
    
    js正则与java正则区别
        JS转义字符用\表示
        java转义字符用\\表示
            JAVA中的正则字符集
                1)   \w 匹配字母或者数字或者下划线 [a-zA-Z0-9_]
                2)   \s 匹配任意的空白符
                3)   \d 匹配数字 [0-9]

                4)   \W 匹配任意非字母、数字、下划线、汉字的字符
                5)   \S 匹配任意不是空白符的字符
                6)   \D 匹配任意非数字的字符
                7)   [\u4e00-\u9fa5]表示单个中文

                8)   * 重复任意次 =={0,} \d*
                9)   + 至少重复一次=={1,} \d+
                10) ? 重复零次或一次=={0,1}
                11) {n} 重复n次 \d{4}==\d\d\d\d 0000---9999
                12) {n,} 重复n次或更多次\d{5,}
                13) {n,m} 重复n到m次 \d{2,3}
                注意:\f 匹配一个换页符 、\n 匹配一个换行符 、\r 匹配一个回车符
    
    
    java正则    匹配    应用
        第一种方法 返回boolean类型
        //========1、字符串的matches方法==============
            String regex="∧\\d[3]$"
            String str1=1234"
            String str2=123"
            str1.matches(regex);
        第二种方法 返回boolean类型
        //==========2、Pattern类的matches方法==========
            String regex="∧\\d[3]$"
            String str1=1234"
            boolean flag1 = Pattern.matches(regex,str1);
            System.out.print(flag1);
        第三种方法
        //==========3、Matcher的matches方法==========
            String regex = "\\w+";
            String str1="aa";
            Pattern compile = Pattern.compile(regex);
            Matcher m1 = compile.marches(str1);
            boolean flag1 = m1.matches();
            System.out.println(flag2);
            
    java正则    查找    应用
        //需要Matcher对象的find方法
            String regex="\\w{3}";
            //要验证的字符串
            String str1="abc-adrrt-wetr-df";
            
            //查找str1字符串中满足正则的子串
            //得到正则表达式对应的Pattern对象,正则表达式的编译表示形式 
            Pattern compile = Pattern.compile(regex);
            //得到匹配器对象
            Matcher matcher = compile.matcher(str1);
            
            //查找    find()方法不是从头开始查找
            boolean flag1 = matcher.find();//true
            boolean flag2 = matcher.find();//true
            
            System.out.println(flag1);
            System.out.println(flag2);
        //lookAt()   每次从头开始查找,结果永远都是true
            boolean flag1 = matcher.lookingAt();
            boolean flag2 = matcher.lookingAt();
            
            System.out.println(flag1);//true
            System.out.println(flag2);//true
            
    java正则    替换    应用三
        // 拒绝黄赌毒   拒绝***
            String str="拒绝黄赌毒";
            //规则
            String regex="黄|赌|毒";
            //得到Pattern对象
            Pattern compile = Pattern.compile(regex);
            //得到匹配器对象
            Matcher matcher = compile.matcher(str);
            
            String str1 = matcher.replaceAll("*");
            
            System.out.println(str1);

  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值