SubString从最后的URL?

时间:2013-06-04 05:19:38

标签: java substring

"http://www.freegreatpicture.com/files/146/26189-abstract-color-background.jpg"

我想要对此网址进行子串,以便获取图片名称 “26189抽象色-background.jpg”

怎么做?

5 个答案:

答案 0 :(得分:2)

你的意思是这样吗?

String url = "http://www.freegreatpicture.com/files/146/26189-abstract-color-background.jpg";
String file = url.substring(url.lastIndexOf('/')+1);

String file = new URL(url).getFile();

我更喜欢第二种,因为即使速度稍慢,它也会更清晰,您可能需要URL的其他部分。

答案 1 :(得分:1)

你可以尝试

String s = "http://www.freegreatpicture.com/files/146/26189-abstract-color-background.jpg";
s = s.substring(s.lastIndexOf("/")+1);

答案 2 :(得分:0)

lastIndexOf()substring()一起使用。

String path = "http://www.freegreatpicture.com/files/146/26189-abstract-color-background.jpg";

String filename = path.substring(path.lastIndexOf("/") + 1);

答案 3 :(得分:0)

一种有效的方法是使用正则表达式,可以通过以下方式完成:

Matcher m = Pattern.compile("\\/([^\\/]+)$").matcher(link);
if (m.find())
    fileName = m.group(1); 

正则表达式的意思是'/'后面跟着字符串末尾的任意数量的非'/'。

但是如果你想使用子字符串,那么使用以下内容也很容易。

String fileName = link.substring(link.lastIndexOf('/')+1);

答案 4 :(得分:0)

使用

String x="http://www.freegreatpicture.com/files/146/26189-abstract-color-background.jpg";

x.substring(x.indexOf('2'))