日期:2014-05-20  浏览次数:20704 次

求一java正则表达式
字符串长有1000个字符 中文,

要求按照 每100个字符长度 为参照标准 ,取每100 以内的 最靠近第100 个字符的 句号 截取,(动态的靠近100个字符的) 。
  不超过100字符!!没有句号的话 就直接截取100个字符返回

 

------解决方案--------------------
Java code

        String str="........";
        Pattern p = Pattern.compile(".+\\。|.{100}|.+");
        for(;str.length()!=0;) {
            String test = null;
            if(str.length()>=100) {
                test = str.substring(0, 100);
            }
            else {
                test = str;
            }
            Matcher m = p.matcher(test);
            while(m.find()) {
                System.out.println(m.group());
                test = m.group();
                break;
            }
            str = str.substring(test.length(), str.length());
        }