"http://www.freegreatpicture.com/files/146/26189-abstract-color-background.jpg"
我想对这个网址进行子串化,所以我得到图像名称“26189-abstract-color-background.jpg”
怎么做?
你的意思是这样吗?
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 的其他部分。
你可以试试
String s = "http://www.freegreatpicture.com/files/146/26189-abstract-color-background.jpg";
s = s.substring(s.lastIndexOf("/")+1);
lastIndexOf()
与 一起使用substring()
。
String path = "http://www.freegreatpicture.com/files/146/26189-abstract-color-background.jpg";
String filename = path.substring(path.lastIndexOf("/") + 1);
一种有效的方法是使用正则表达式,它可以通过以下方式完成:
Matcher m = Pattern.compile("\\/([^\\/]+)$").matcher(link);
if (m.find())
fileName = m.group(1);
其中正则表达式表示“/”,在字符串末尾后跟任意数量的非“/”。
但是,如果您想使用子字符串,也很容易使用以下方法。
String fileName = link.substring(link.lastIndexOf('/')+1);
利用
String x="http://www.freegreatpicture.com/files/146/26189-abstract-color-background.jpg";
x.substring(x.indexOf('2'))