一尘不染

如何获取URI的最后一个路径段

java

我输入的是一个字符串URI。如何获得最后的路径段(在我的情况下是id)?

这是我的输入URL:

String uri = "http://base_path/some_segment/id"

我必须获得我尝试过的ID:

String strId = "http://base_path/some_segment/id";
strId = strId.replace(path);
strId = strId.replaceAll("/", "");
Integer id =  new Integer(strId);
return id.intValue();

但这是行不通的,并且肯定有更好的方法可以做到这一点。


阅读 369

收藏
2020-09-08

共1个答案

一尘不染

是您要寻找的:

URI uri = new URI("http://example.com/foo/bar/42?param=true");
String path = uri.getPath();
String idStr = path.substring(path.lastIndexOf('/') + 1);
int id = Integer.parseInt(idStr);

或者

URI uri = new URI("http://example.com/foo/bar/42?param=true");
String[] segments = uri.getPath().split("/");
String idStr = segments[segments.length-1];
int id = Integer.parseInt(idStr);
2020-09-08