Java: Remove String from StringBuilder [duplicate]

孤人 提交于 2019-12-05 15:17:29

问题


I want to remove String from StringBuilder

Example

String aaa = "sample";
String bbb = "sample2";
String ccc = "sample3";

In another part

StringBuilder ddd = new StringBuilder();
ddd.append(aaa);
ddd.append(bbb);
ddd.append(ccc);

I want to check if StringBuilder ddd contains String aaa and remove it

if (ddd.toString().contains(aaa)) {
    //Remove String aaa from StringBuilder ddd
}

Is that possible? Or is there any other way to do like that?


回答1:


try this

    int i = ddd.indexOf(aaa);
    if (i != -1) {
        ddd.delete(i, i + aaa.length());
    }



回答2:


try this

public void delete(StringBuilder sb, String s) {
    int start = sb.indexOf(s);
    if(start < 0)
        return;

    sb.delete(start, start + s.length());
}



回答3:


Create a string from ddd and use replace().

ddd.toString().replace(aaa,"");



回答4:


It can be done by :

ddd.delete(from, to);


来源:https://stackoverflow.com/questions/21408401/java-remove-string-from-stringbuilder

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!