为了账号安全,请及时绑定邮箱和手机立即绑定

如何创建在每个元音后添加破折号的方法?

如何创建在每个元音后添加破折号的方法?

摇曳的蔷薇 2021-10-27 13:50:17
static char[] vowelArray = {'e', 'i', 'u', 'o', 'a'};    public static String insertDashAfterWovel(String input){    char[] tmp=input.toCharArray();    for (int i = 0; i < tmp.length; i++) {        if (tmp[i]== vowelArray[i]){            tmp[i]+='-';            return tmp.toString();        }    }    return "";我做的方法不行。如何使它在每个检测到的元音后添加一个破折号并返回如下示例中的字符串?我为这个方法做了一个测试类来验证我是否正确。“角斗士”应该返回“gla-di-a-to-r”
查看完整描述

3 回答

?
守着星空守着你

TA贡献1799条经验 获得超8个赞

您可以像这样使用正则表达式:


String str = "gladiator";  // your input string

str = str.replaceAll("([aeiou])", "$1-");

System.out.println(str);


查看完整回答
反对 回复 2021-10-27
?
慕尼黑5688855

TA贡献1848条经验 获得超2个赞

尝试这个:


 static char[] vowelArray = {'e', 'i', 'u', 'o', 'a'};


 public static String insertDashAfterWovel(String input){


    char[] tmp=input.toCharArray();


    for (int i = 0; i < vowelArray.length; i++) {

        for(int j=0;j<tmp.length;j++){

            if (vowelArray[i]==tmp[j]){

                input=input.replace(input.substring(j,j+1),(input.substring(j,j+1)+"-"));

                break;

             }   

        }

    }

    return input;

 }


查看完整回答
反对 回复 2021-10-27
?
FFIVE

TA贡献1797条经验 获得超6个赞

由于海报的问题是:


我做的方法不行。如何使它在每个检测到的元音后添加一个破折号并返回如下示例中的字符串?“角斗士”应该返回“gla-di-a-to-r”


我提供了一个与原始方法最相似的工作示例。


static char[] vowelArray = {'e', 'i', 'u', 'o', 'a'};


public static String insertDashAfterVowel(String input){


    char[] tmp=input.toCharArray();

    String newString = "";

    for (int i = 0; i < tmp.length; i++) {

        newString += tmp[i];

        if (new String(vowelArray).indexOf(tmp[i]) != -1){

            newString += "-";            

        }

    }

    return newString;

}


查看完整回答
反对 回复 2021-10-27
  • 3 回答
  • 0 关注
  • 141 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信