-5

私は文字列を持っているとしましょう

String link = "www.abc.com"

今、私は別の文字列を持っています

String actualLink = "www.abc.com//www.abc.com/content/detail.html"

ここで、actualLink 文字列をチェックし、文字列リンクで重複部分を削除するメソッドが必要です。たとえば、次のようになります。

public String removeDuplicate(String link, String actualLink){
     ....
     return actualLink;    //so the actualLink will become to     "www.abc.com/content/detail.html"
}

何かアドバイスはありますか?どうも

4

4 に答える 4

2
actualLink = actualLink.substring(actualLink.lastIndexOf(link));
于 2013-06-24T14:37:07.210 に答える
0

重複した文字列値の意味は非常にあいまいです。あなたの例から、2番目のパスセグメントが最初のものと等しい場合(またはおそらくどこでも複数のパスセグメント)、2番目のパスセグメントを削除したいと思います。

最初に文字列を分割してから、アイテムを操作することをお勧めします。

LinkedHashSet<String> items = new LinkedHashSet<String>(Arrays.asList(a.split("/")));
return StringUtils.join(items, "/");

または、最初の重複のみを削除する必要がある場合

String[] items = a.split("/");
if(items.length > 1 && items[0].equals(items[1])) {
   return StringUtils.join(items, "/", 1);
} else {
   return a;
}
于 2013-06-24T14:42:47.783 に答える