使用字符串生成器用动态文本替换一些静态文本

时间:2016-08-03 19:23:10

标签: java

我有一个动态生成的网址,我想使用字符串构建器放置一些带有未知文本的文本。请告诉我怎么做?

示例: -

  

http://localhost/abcdef/servlet/cpd.abcd.build.coupons.CouponValueFormatterServlet?dsn=frd_abcdef&lang=ENG&val=PRCTXT|ABCDE_-1223344&classGroupid=101,201&fgcolor=000000&bgcolor=E0DBD8&width=100&height=80&fontSize=11&fontWeight=normal

上述URL是字符串构建器,“val = PRCTXT | ABCDE_-1223344”文本必须更改为“val = 123456”文本。但这里Val始终是用户输入。所以它总是在改变。

1 个答案:

答案 0 :(得分:0)

如果您绝对想要使用StringBuilder,则应阅读javadoc 以找到适合您目的的可用方法。

那将是:

StringBuilder buf = new StringBuilder("http://localhost/abcdef/servlet/cpd.abcd.build.coupons.CouponValueFormatterServlet?dsn=frd_abcdef&lang=ENG&val=PRCTXT|ABCDE_-1223344&classGroupid=101,201&fgcolor=000000&bgcolor=E0DBD8&width=100&height=80&fontSize=11&fontWeight=normal.");

int start = buf.indexOf("&val=");
if (start != -1) {
    start += 5;
    int end = buf.indexOf("&", start);
    if (end == -1)
        end = buf.length();
    buf.replace(start, end, "123456");
    System.out.println(buf);
}