java正则表达式使用注意事项, demo

java中的正则表达式的简单实用demo

需要注意项:

  1. java中的反斜线需要两个
  2. 在获取配置项是需要先调用matcher.matches() 和matcher.find()中的一个方法来判断 匹配中了没有
  3. 表达式的初始化可以放在成员变量中, 没必要重复初始化
  4. 可以先在一些在线正在表达式网站上面先调试好正则
 public static void main(String[] args) {
        //可以把这句放在类的成员变量中, 因为每次生成对象耗费资源。 并且正则表达式是线程安全的
        //具体的正在表达式的知识,请参考https://www.runoob.com/regexp/regexp-metachar.html
        //建议先在在线正则表达式网站中调试好表达式, 再拷贝到idea中,idea中字符串拷贝会自动给你加上两个\\,十分方便
       Pattern pattern = Pattern.compile(".*副本(\\((\\d+)\\))?$");
        //开始正则匹配
        Matcher matcher = pattern.matcher("文件名称副本(2)");

        //在获取具体的正则表达式的时候,请先调用下matcher.matches() 和matcher.find()中的一个方法。 不然会获取失败
        if (matcher.matches()) {
            // 这个groupCount返回的数字,表示的子正则(就是上面正则中的括号内)匹配中的个数。
            //所以如果要遍历上面的正则匹配的结果,可以在这个i上加1后循环
            int count = matcher.groupCount();
            System.out.println(count);
            System.out.println(matcher.group(0));
            System.out.println(matcher.group(1));
            System.out.println(matcher.group(2));
        }


    }

运行结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值