zoukankan      html  css  js  c++  java
  • 正则表达式里matcher.find()一直为false

    项目里用matcher.find()发现有匹配的,也为false。

    解决办法就是去掉^和$。

    public static String replaceStr(String str){
        //针对字符串处理
        String reg = "[\u4e00-\u9fa5]{4}(:|:)([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8])))";
    //    String reg = "(:|:)";
        Pattern pattern = Pattern.compile(reg);
        Matcher matcher = pattern.matcher(str);
        System.out.println(matcher.find()+"");
        StringBuilder sb = new StringBuilder();
        //查找符合规则的子串
        while(matcher.find()){
            //获取 字符串
            sb.setLength(0);
            sb.append(matcher.group());
            System.out.println(sb.toString());
            //获取的字符串的首位置和末位置
            System.out.println(matcher.start()+"--"+matcher.end());
            str = str.replace(matcher.group(),"**"+matcher.group()+"**");
        }
        System.out.println(str);
        return str;
    }
    

      

  • 相关阅读:
    Linux常用命令2
    Linux常用命令1
    Nginx配置Kafka
    SpringBoot整合Druid
    spring boot jpa
    mybatis-plus_2
    copy data to map
    HashMap容量问题
    在SpringBoot主启动类中获取实例化的Bean
    Linux环境中Rsync增量备份文件
  • 原文地址:https://www.cnblogs.com/bxfx111/p/7691874.html
Copyright © 2011-2022 走看看