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

我想对这个网址进行子串化,所以我得到图像名称“26189-abstract-color-background.jpg”

怎么做?

4

5 回答 5

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 的其他部分。

于 2013-06-04T05:23:07.157 回答
1

你可以试试

String s = "http://www.freegreatpicture.com/files/146/26189-abstract-color-background.jpg";
s = s.substring(s.lastIndexOf("/")+1);
于 2013-06-04T05:22:45.710 回答
0

lastIndexOf()与 一起使用substring()

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

String filename = path.substring(path.lastIndexOf("/") + 1);
于 2013-06-04T05:22:01.807 回答
0

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

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

其中正则表达式表示“/”,在字符串末尾后跟任意数量的非“/”。

但是,如果您想使用子字符串,也很容易使用以下方法。

String fileName = link.substring(link.lastIndexOf('/')+1);
于 2013-06-04T05:22:38.763 回答
0

利用

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

x.substring(x.indexOf('2'))
于 2013-06-04T05:25:37.090 回答