替换掉一个字符串中的_和-,并将之后的字母改为大写。

例如:

i_am-a_student 转为:iAmAStudent

I-can_do-it        转为:ICanDoIt

代码:

import java.util.regex.Matcher;
import java.util.regex.Pattern;

class Solution{

    //方法一
    static String toCamelCase(String s){
        while(s.contains("_")){
            int num=s.indexOf("_",1);
            if((num+1)<=s.length()){
                String aa=s.charAt(num+1)+"";
                s=s.replace("_"+aa.trim(),aa.toUpperCase());
            }
        }
        while(s.contains("-")){
            int num=s.indexOf("-",1);
            if((num+1)<=s.length()){
                String aa=s.charAt(num+1)+"";
                s=s.replace("-"+aa.trim(),aa.toUpperCase());
            }
        }
        return s;
    }

    //方法二
    static String toCamelCase2(String s){
        Matcher m = Pattern.compile("[_|-](\\w)").matcher(s);
        StringBuffer sb = new StringBuffer();
        while (m.find()) {
            m.appendReplacement(sb, m.group(1).toUpperCase());
        }
        return m.appendTail(sb).toString();
    }

    public static void main(String[] args) {
        String s="as_hi-ai_d";
        System.out.println(toCamelCase(s));
        System.out.println(toCamelCase2(s));
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_43969830/article/details/89224991
今日推荐