如何在StringBuilder中连接子字符串?

时间:2013-10-01 10:00:11

标签: java stringbuilder

如何将子串连接重构为StringBuilder

        String line = "this is my start and my end string";
        int start = line.indexOf("start");
        line = line.substring(0, start) + line.substring(start + 5);

        int end = line.indexOf("end");
        line = line.substring(0, end) + line.substring(end + 3);
            //result: this is my and my string";

StringBuilder的代码如何?当我想一个接一个地执行几次子串时?

5 个答案:

答案 0 :(得分:3)

如果您的问题是“我如何重复删除字符串中的子字符串”,您可以尝试这样的事情:

StringBuilder line = new StringBuilder("this is my start and my end string");
int start = line.indexOf("start");
line.delete(start, start + 5);
int end = line.indexOf("end");
line.delete(end, end + 3);
String result = sb.toString()

创建一次StringBuilder,然后操纵其内容。

答案 1 :(得分:1)

这样的事情可能是:

    StringBuilder line = new StringBuilder("this is my **start** and my **end** string");
    int start = line.indexOf("start");
    line = new StringBuilder(line.substring(0, start).append(line.substring(start + 5)));

    int end = line.indexOf("end");
    line = new StringBuilder(line.substring(0, end).append(line.substring(end + 3)));

答案 2 :(得分:1)

你的意思是这样的吗?或者我明白了吗?

String line = "this is my start and my end string";
int start = line.indexOf("start");
int end = line.indexOf("end");
StringBuilder sb = new StringBuilder();
sb.append(line.substring(0, start);
sb.append(line.substring(start + 5);
sb.append(line.substring(0, end);
sb.append(line.substring(end + 3);
String result = sb.toString()

答案 3 :(得分:0)

尝试

String line = "this is my start and my end string";
    int start = line.indexOf("start");
    StringBuilder stringBuilder = new StringBuilder();
    stringBuilder.append(line.substring(0, start));
    stringBuilder.append(line.substring(start + 5));

    int end = line.indexOf("end");
    stringBuilder.append(line.substring(0, end));
    stringBuilder.append(line.substring(end + 3));
    System.out.println("StringBuilder : "+stringBuilder.toString());

答案 4 :(得分:0)

如果我没有错,StringBuilder拥有它自己的indexOf和子串实现。这个问题的主要关注点似乎是放弃了String的使用,而StringBuilder的主要功能仍然是连接。

所以http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html可以帮助你找到相关的方法,你可以继续使用StringBuilder和.append()方法以及你的字符串查找和子字符串方法。