2012-12-30 52 views
0

我得到通過getWebsite抓取網站從豆()與以前的文本替換。我有一段時間得到網站http://www.stackoverflow.com,有一段時間得到http://stackoverflow.com。我的問題是我想用「[email protected]​​ackoverflow.com」替換setEmail()來代替bean。是否可以藉助substring和replaceAll方法?得到串並在Java

我想自己在波紋管

String s=str.substring(0,11); 
    System.out.println("String s (0,11) :"+s); 
    String string=str.substring(0,7); 
    System.out.println("string (0,7):"+string); 
    String name=str.substring(11); 
    String name1=str.substring(7); 
    System.out.println("name :"+name); 
    boolean b=((!(s.length()==11)) || (string.length()==7))? true : ((!(string.length()==7)) || (s.length()==11))? false : true ; 
    System.out.println(b); 
    if(b==true) 
    { 
     System.out.println("condition TRUE"); 
     String replaceString=string.replaceAll(string,"[email protected]"); 
     System.out.println("replaceString :"+replaceString+name1); 
    } 
    if(b==false) 
    { 
     System.out.println("condition FALSE"); 
     String replaceString=s.replaceAll(s,"[email protected]"); 
     System.out.println("replaceString :"+replaceString+name); 
    } 
+2

我很抱歉,但是這看起來像一個代碼混淆大賽的冠軍。你真的想做什麼? – duffymo

+0

爲什麼不使用'URI'? – fge

回答

0

確定不給自己上一個困難時期,只是[email protected]替換使用str.replaceAll()http://或其他可能的模式的字符串中。使用正則表達式,建議

String str = "http://www.stackoverflow.com"; 

str = str.replaceAll("http:\\/\\/(www\\.)?","[email protected]"); 
System.out.println(str); 

http://rextester.com/SJD79549

以及我的問題是?你想做什麼?

0

一個例子

String orig = "Hello World!"; 

String repl = orig.substring(6, 11); // "World" 

String newstr = orig.replaceAll(repl, "user1937829"); // Hello user1937829! 

在你的情況,你不需要http://(www)

String newstr = orig.replaceAll("www", "").replaceAll("http://", "[email protected]"); 

newstr將等於[email protected]如果orighttp://www.stackoverflow.comhttp://stackoverflow.com

希望這是你想要的。

0

你需要使用正則表達式替換功能

String str1= "http://www.stackoverflow.com"; 
String str2 = "http://stackoverflow.com"; 
System.out.println(str1.replaceAll("http:\\/\\/(www\\.)?","[email protected]")); 
System.out.println(str2.replaceAll("http:\\/\\/(www\\.)?","[email protected]"));