2016-05-10 5 views
0

3番目のスラッシュの後に文字列を取得しようとしています。しかし、私はそれをする方法を知らない。私は分割を使用したが、それは私が望むものではない。Javaの3番目のスラッシュの後に文字列を取得する方法

for(String obj2: listKey.getCommonPrefixes()){ 
    Map<String, String> map = new HashMap<String, String>(); 
    String[] id = obj2.split("/"); 
    if (id.length > 3) { 
     String name = id[3]; 
     map.put("id", name); 
     map.put("date", "null"); 
     map.put("size", String.valueOf(obj2.length())); 
     keys.add(map); 
    } 
} 

id[3]は私だけid[3]を与えますが、私は第三スラッシュの後のすべてのものをしたいですか?どうやってやるの?

+2

分割前にobj2の値を入力することはできますか? – pczeus

答えて

8

あなたはjavadocから

String[] id = obj2.split("/", 4); 

によって

String[] id = obj2.split("/"); 

を置き換えることができます。

をlimitパラメータはパターンが適用され、したがって、の長さに影響される回数を制御します結果の配列制限nが0より大きい場合、パターンは最大でn - 1回適用され、配列の長さはnより大きくなく、配列の最後のエントリには最後に一致した区切り文字を超えるすべての入力が含まれます。 nが正でない場合、パターンはできるだけ多くの回数適用され、配列の長さは任意です。 nが0の場合、パターンはできるだけ多くの回数適用され、配列の長さは任意で、後続の空の文字列は破棄されます。

関連する問題