码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式里matcher.find()一直为false

时间:2017-10-19 14:07:02      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:正则   查找   append   return   去掉   length   .com   正则表达式   字符串   

项目里用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;
}

  

正则表达式里matcher.find()一直为false

标签:正则   查找   append   return   去掉   length   .com   正则表达式   字符串   

原文地址:http://www.cnblogs.com/bxfx111/p/7691874.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!