Java:从StringBuilder中删除String

时间:2014-01-28 14:32:05

标签: java string stringbuilder

我想从StringBuilder中删除String

实施例

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

在另一部分

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

我想检查StringBuilder ddd是否包含String aaa并将其删除

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

这可能吗?或者还有其他方法吗?

4 个答案:

答案 0 :(得分:11)

试试这个

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

答案 1 :(得分:5)

试试这个

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

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

答案 2 :(得分:1)

从ddd创建一个字符串并使用replace()。

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

答案 3 :(得分:0)

可以通过以下方式完成:

ddd.delete(from, to);