2014-05-17 121 views
-4

我有一個文件名作爲字符串,我想從中提取帳號。該字符串將看起來像下面..特定字符的子字符串

插孔16-05-2014-13-32-48_216043_PHOTO.jpg

的帳號將永遠是單詞「PHOTO」之前,它永遠是要麼5或6個字符的長度。在這個例子中,它是「216043」

總的字符串長度可能會有所不同,因爲開頭的名稱可能不同。

有人可以分享什麼是在Java中提取帳號的最佳方式。

謝謝。

+0

不,因爲堆棧溢出不存在給你一個答案沒有你做任何工作(但人們會這樣做)無論如何 – awksp

+0

看看字符串API。有幾種方法可以使用。也許lastIndexOf(...),substring(...)。也許分裂(...)。 – camickr

回答

1
jack-16-05-2014-13-32-48_216043_PHOTO.jpg 
         ^^
         Start End 

試試這個。

String s="jack-16-05-2014-13-32-48_216043_PHOTO.jpg"; 
System.out.println(s.substring(s.indexOf("_")+1,s.lastIndexOf("_"))); 

輸出

216043 

注:由於它只能得到數beetween _TwoUnderscores_只有將工作這種情況下,它不會是有用的,如果你的字符串已經強調了比這個地方其他。

+1

謝謝,這是我正在尋找的。 – AbuMariam