0

正如标题所说,我需要创建一个方法,该方法接受两个字符串作为参数,采用第一个字符串,并删除第二个字符串中的所有字母。

前任。(“你今天过得怎么样”、“嘿”)

会返回“ow ar ou do toda”

我有这个

    while(counter < length){
        String letter = phrase.substring(counter, counter+1);
        if(!letter.equals(second)){
            filtered = filtered + letter;
        }
        counter++;
    }

如果它只是一个字母,则有效。我无法弄清楚如何使用第二个字符串中的多个字母使其工作。

我不能使用替换或数组。

4

2 回答 2

1

这是一种方法的伪代码:

assign 1:st string to resultString

for each letter in 2:nd string
    delete instances of that letter in resultString
    by means of methods indexOf, substring and contains
于 2013-03-30T03:26:56.733 回答
1

这是您可以使用的东西(可能还有其他方法):

public static void main(String[] args) {

    System.out.println(customStr("How are you doing today", "hey"));
}

public static String customStr(final String base, final String remove){
    String baseCopy = base.trim();
    String removeCopy = remove.trim();

    // Delete all uppercase & lowercase letters using a regex [HEYhey]
    baseCopy = base.replaceAll("[" + removeCopy.toUpperCase(Locale.ENGLISH) 
            + removeCopy.toLowerCase(Locale.ENGLISH) + "]", "");

    return baseCopy;
}

输出是

你现在在做什么

于 2013-03-30T04:31:15.477 回答