特定字符的子字符串

时间:2014-05-17 03:02:30

标签: java

我有一个文件名作为字符串,我想从中提取帐号。字符串将如下所示..

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

帐号始终位于" PHOTO"它总是5或6个字符长度。在这个例子中,它是" 216043"

总字符串长度可能会有所不同,因为开头的名称可能不同。

有人可以分享一下Java中提取帐号的最佳方式。

感谢。

1 个答案:

答案 0 :(得分: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

注意:因为它只会获得 _TwoUnderscores _ 之间的数字,并且仅适用于这种情况,如果你的字符串除了这个地方以外有下划线,它将没有用。