2016-10-18 116 views
0

我想讓兩個字符串替換另一個字符串的兩個部分,然後加載url和替換字符串部分的組合。有人知道如何做到這一點?獲取字符串來替換另一個字符串的部分

我已經走過這麼遠,但這顯然不起作用。

String website = "www.example.com/b/g" 
String b = preferences.getString("bKey", "Error"); 
String g = preferences.getString("gKey", "Error"); 
String replaced = website.replace("b", b); 
String replaced = website.replace("g", g); 
browser.loadUrl(replaced); 
+0

如果你的網址是'www.bad-example.com'怎麼辦?你不想在'壞'中替換'b'嗎? –

+0

不,但在我的情況下,它工作正常。 –

回答

0

您可能會遇到您要使用的代碼問題。如果您有這樣的內容:「www.exampleb.com/b/g」,並且您使用替換方法,它會給您一個混淆的代碼。因此,您需要指定一個更好的參數來替換您的網址,也許您可​​以使用如下模型:「www.exampleb.com/{b}/{g}」,並在替換方法中使用「{b}」和「 {G}」。順便說一句,你唯一的錯誤是定義兩次「替換」,第二次你應該只使用:

replaced = replaced.replace("{g}", g); 
+0

這就像你說的唯一的問題。謝謝。 –

0

你發佈的內容不會被編譯,我會假設你很快就會拋出一個例子,這不是你指的問題。

你得到的是一個字符串x,你改變x並把結果放在y中,然後把x改成別的東西並放置結果z。當然z只能保持第二個變化。如果你想既要沿着這些線路目前嘗試的東西:

String website = "www.example.com/b/g"; 
    String b = "111"; // change to this 
    String g = "222"; // change to this 
    String replaced = website.replace("b", b); // first change 
    replaced = replaced.replace("g", g); // second change 
    System.out.println(replaced); 
// do whatever 

改變x與y和則y到z,然後使用將z作爲您的最終產品。

相關問題