正则表达式驼峰标示转下划线

humpToUnderline
/**
     * 驼峰转下划线
     * @param humpString
     * created by hbd 20160722
     * @return
     */
    public String humpToUnderline(String humpString) {
        if(BlankUtil.isEmpty(humpString)) return "";
        String regexStr = "[A-Z]";
        Matcher matcher = Pattern.compile(regexStr).matcher(humpString);
        StringBuffer sb = new StringBuffer();
        while (matcher.find()) {
            String g = matcher.group();
            matcher.appendReplacement(sb, "_" + g.toLowerCase());
        }
        matcher.appendTail(sb);
        if (sb.charAt(0) == '_') {
            sb.delete(0, 1);
        }
        return sb.toString();
    }

 

posted @ 2016-07-22 19:45  旋转的梦  阅读(5678)  评论(0编辑  收藏  举报