Java 匹配两个字符串并将不匹配的字符替换为+;在爪哇

Java 匹配两个字符串并将不匹配的字符替换为+;在爪哇,java,Java,修改第一个字符串,使除第二个字符串中可用的字符外的所有字符都替换为加号(+)。如果第一个字符串中的一个或多个字符出现在第二个字符串中,它们将不会替换为+(忽略大小写) 字符串input1=“纽约”; 字符串input2=“New Jersy” String out=“新建Y+r+” 我试过这个: String input1 ="New York"; String input2 ="New Jersy"; String str[] = input1.split([New Jersy]); for

修改第一个字符串,使除第二个字符串中可用的字符外的所有字符都替换为加号(+)。如果第一个字符串中的一个或多个字符出现在第二个字符串中,它们将不会替换为+(忽略大小写)

字符串input1=“纽约”; 字符串input2=“New Jersy”

String out=“新建Y+r+”

我试过这个:

String input1 ="New York";
String input2 ="New Jersy";
String str[] = input1.split([New Jersy]);

for(String s:str) {
    if(s.equals("")) // same pattern else // + should be printed }

您的解决方案可以工作,但只需进行如下轻微修改。如果不想考虑区分大小写,请删除
(?i)
部分

public class StringReplacer {

    public static void main(String[] args) {
        String str1 = "New York";
        String str2 = "New Jersy";

        for(String s : str1.split("(?i)[" + str2 +"]")){
            if(s.trim().length() > 0){
                str1 = str1.replace(s, "+");
            }
        }

        System.out.println(str1); // Prints New Y+r+
    }

}

好的,所以我们知道你想做什么。。。问题是什么?你还有多远?你的代码是什么样子的,有什么问题吗?我试过这个字符串input1=“newyork”;字符串input2=“New Jersy”;String str[]=input1.split([New Jersy]);对于(字符串s:str){if(s.equals(“”)//应打印相同的模式else//+}