Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在另一个字符串的某些字符之间插入字符串_Java - Fatal编程技术网

Java 在另一个字符串的某些字符之间插入字符串

Java 在另一个字符串的某些字符之间插入字符串,java,Java,假设我有一个字符串,说stringy=“ 另一个字符串字符串更细= 如何在的结束和开始之间插入更严格的?您是否正在寻找查找和替换?如果没有,你能详细说明你的问题吗 stringy = stringy.replace("<Banana><Raffle/>", "<Banana>"+ stringier +"<Raffle/>") stringy=stringy.replace(“,”“+stringier+”) 您是否只是在寻找查找和替换?如果没有

假设我有一个字符串,说
stringy=“

另一个字符串<代码>字符串更细=


如何在
的结束
和开始
之间插入
更严格的
?您是否正在寻找查找和替换?如果没有,你能详细说明你的问题吗

stringy = stringy.replace("<Banana><Raffle/>", "<Banana>"+ stringier +"<Raffle/>")
stringy=stringy.replace(“,”“+stringier+”)

您是否只是在寻找查找和替换?如果没有,你能详细说明你的问题吗

stringy = stringy.replace("<Banana><Raffle/>", "<Banana>"+ stringier +"<Raffle/>")
stringy=stringy.replace(“,”“+stringier+”)

这可以是另一个选项:

stringy = stringy.substring(0, stringy.indexOf("<Banana>") + "<Banana>".length()) 
      + stringier 
      + stringy.substring(stringy.indexOf("<Banana>") + "<Banana>".length());
stringy=stringy.substring(0,stringy.indexOf(“”+“”.length())
+严格的
+stringy.substring(stringy.indexOf(“”+“”.length());

这可以是另一个选项:

stringy = stringy.substring(0, stringy.indexOf("<Banana>") + "<Banana>".length()) 
      + stringier 
      + stringy.substring(stringy.indexOf("<Banana>") + "<Banana>".length());
stringy=stringy.substring(0,stringy.indexOf(“”+“”.length())
+严格的
+stringy.substring(stringy.indexOf(“”+“”.length());

您可以使用String.indexOf查找另一个字符串中某个字符串的匹配项。所以,也许它看起来像这样

    String stringy = "<Monkey><Banana><Raffle/>";
    String stringier = "<Cool stuff to add/>";

    String placeToAdd = "<Banana><Raffle/>";
    String addAfter = "<Banana>";
    int temp;

    temp = stringy.indexOf(placeToAdd);
    if(temp != -1){
        temp = temp+addAfter.length();

        stringy = stringy.substring(0, temp) + stringier + stringy.substring(temp+1, stringy.length());

        System.out.println(stringy);
    } else {
        System.out.println("Stringier \'" + stringier+"\" not found");
    }
stringy=“”;
字符串stringier=“”;
字符串placeToAdd=“”;
字符串addAfter=“”;
内部温度;
temp=stringy.indexOf(placeToAdd);
如果(温度!=-1){
temp=temp+addAfter.length();
stringy=stringy.substring(0,temp)+stringier+stringy.substring(temp+1,stringy.length());
System.out.println(stringy);
}否则{
System.out.println(“Stringier\”+Stringier+“\”未找到);
}

在查看了其他答案后,替换可能是比子字符串更好的选择。

您可以使用String.indexOf查找另一个字符串中某个字符串的匹配项。因此,它可能看起来像这样

    String stringy = "<Monkey><Banana><Raffle/>";
    String stringier = "<Cool stuff to add/>";

    String placeToAdd = "<Banana><Raffle/>";
    String addAfter = "<Banana>";
    int temp;

    temp = stringy.indexOf(placeToAdd);
    if(temp != -1){
        temp = temp+addAfter.length();

        stringy = stringy.substring(0, temp) + stringier + stringy.substring(temp+1, stringy.length());

        System.out.println(stringy);
    } else {
        System.out.println("Stringier \'" + stringier+"\" not found");
    }
stringy=“”;
字符串stringier=“”;
字符串placeToAdd=“”;
字符串addAfter=“”;
内部温度;
temp=stringy.indexOf(placeToAdd);
如果(温度!=-1){
temp=temp+addAfter.length();
stringy=stringy.substring(0,temp)+stringier+stringy.substring(temp+1,stringy.length());
System.out.println(stringy);
}否则{
System.out.println(“Stringier\”+Stringier+“\”未找到);
}

在看了其他答案后,替换可能是比子字符串更好的选择。

Java字符串是不可变的,但StringBuilder不是

public class StringyThingy {
  public static void main(String[] args) {
    StringBuilder stringy = new StringBuilder("<Monkey><Banana><Raffle/>");

    System.out.println(stringy);

    // there has to be a more elegant way to find the index, but I'm busy.
    stringy.insert(stringy.indexOf("Banana")+"Banana".length()+1,"<Cool stuff to add/>");

    System.out.println(stringy);
  }
}

// output
<Monkey><Banana><Raffle/>
<Monkey><Banana><Cool stuff to add/><Raffle/>
公共类stringthingy{
公共静态void main(字符串[]args){
StringBuilder stringy=新StringBuilder(“”);
System.out.println(stringy);
//必须有一种更优雅的方法来找到索引,但我很忙。
stringy.insert(stringy.indexOf(“香蕉”)+“香蕉”.length()+1,”);
System.out.println(stringy);
}
}
//输出

Java字符串是不可变的,但StringBuilder不是

public class StringyThingy {
  public static void main(String[] args) {
    StringBuilder stringy = new StringBuilder("<Monkey><Banana><Raffle/>");

    System.out.println(stringy);

    // there has to be a more elegant way to find the index, but I'm busy.
    stringy.insert(stringy.indexOf("Banana")+"Banana".length()+1,"<Cool stuff to add/>");

    System.out.println(stringy);
  }
}

// output
<Monkey><Banana><Raffle/>
<Monkey><Banana><Cool stuff to add/><Raffle/>
公共类stringthingy{
公共静态void main(字符串[]args){
StringBuilder stringy=新StringBuilder(“”);
System.out.println(stringy);
//必须有一种更优雅的方法来找到索引,但我很忙。
stringy.insert(stringy.indexOf(“香蕉”)+“香蕉”.length()+1,”);
System.out.println(stringy);
}
}
//输出

这是xml还是您的自定义标记语言语法?如果这实际上是xml(顺便说一句,目前语法不正确),那么您可能希望将其视为xml,而不仅仅是字符串。Java对XML有丰富的支持。对于这样一个简单的用例来说,这可能有些过分,但是如果您的应用程序中充满了这样的语句,那么花时间学习XMLAPI的功能可能是值得的s@DaveHowes它是xml,但上面只是(糟糕的)简化了我试图做的事情。我将研究API,但screenmutt的答案现在肯定可以。jdom是我最喜欢的XML API-比java附带的标准API(www.jdom.org)简单得多。这是XML还是您的自定义标记语言语法?如果这实际上是XML(顺便说一句,目前语法不正确)然后,您可能希望将其视为XML,而不仅仅是字符串。Java对XML有丰富的支持。对于这样一个简单的用例来说,这可能有些过分,但是如果您的应用程序中充满了这样的语句,那么花时间学习XMLAPI的功能可能是值得的s@DaveHowes它是xml,但上面只是(糟糕的)简化了我试图做的事情。我将研究API,但screenmutt的答案现在肯定可以。jdom是我最喜欢的XML API-比java附带的标准API(www.jdom.org)简单得多。事实是,永远都是一样的。但是,在这种情况下,无论以前是什么,有时可能是或。。。如果replaceAll是stringy.replaceAll(“>”,“>“+stringier”)
,它还能工作吗?是的。那就行了。如果您进入高级查找和替换课程,您可能会学习一些可能会有所帮助的知识。我真的梦想着嫁给雷格克斯,我太爱他们了。我对他们很熟悉,但无论如何我都不是专家,不过我会更深入地研究他们。谢谢你的回答!事情是,永远都是一样的。但是,在这种情况下,无论以前是什么,有时可能是或。。。如果replaceAll是stringy.replaceAll(“>”,“>“+stringier”)
,它还能工作吗?是的。那就行了。如果您进入高级查找和替换课程,您可能会学习一些可能会有所帮助的知识。我真的梦想着嫁给雷格克斯,我太爱他们了。我对他们很熟悉,但无论如何我都不是专家,不过我会更深入地研究他们。谢谢你的回答!