我有:
/xxx/yyy/aaa/bbb/abc.xml (or)
/xxx/yyy/aaa/abc.xml (or)
/xxx/yyy/aaa/bbb/ccc/abc.xml
但我只需要:
/xxx/yyyy
如何在Java中实现此功能? 提前致谢。
答案 0 :(得分:0)
你可以使用String.split(" /")来分割和连接前2个元素:
for(String string: input){
String[] splitedStrings = string.split("/");
StringBuilder result = new StringBuilder("/");
for(int i = 1; i < 3 && i < splitedStrings.length; i++){
result.append(splitedStrings[i]).append("/");
}
System.out.println("Result: " + result.toString());
}
答案 1 :(得分:0)
您可以使用StringUtils课程。
您问题的示例代码段,
String str = "/xxx/yyy/aaa/bbb/abc.xml";
int index = StringUtils.ordinalIndexOf(str , "/" , 3);
String result = str.substring(0,index);
或者你可以迭代地使用indexOf方法,
String str = "/xxx/yyy/aaa/bbb/abc.xml";
int index = 0 , count = 1;
while(count != 3)
{
index = str.indexOf("/" , index+1);
count++;
}
String result = str.substring(0,index);
答案 2 :(得分:0)
FilenameUtils.getFullPathNoEndSeparator(str).replaceAll("((/[^/]*){2}).*", "$1")
我用它对我来说很好。