如何在Java中第三次出现“/”之前拆分字符串
我有:如何在Java中第三次出现“/”之前拆分字符串,java,split,Java,Split,我有: 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("/");
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());
}
但我只需要:
/xxx/yyy/aaa/bbb/abc.xml (or)
/xxx/yyy/aaa/abc.xml (or)
/xxx/yyy/aaa/bbb/ccc/abc.xml
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());
}
如何在Java中实现这一点?
提前谢谢 您可以使用String.split/来拆分和合并前2个元素:
/xxx/yyyy
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());
}
您可以使用这个类
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());
}
您的问题的示例代码段
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());
}
或者可以迭代使用indexOf方法
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());
}
String str = "/xxx/yyy/aaa/bbb/abc.xml";
int index = StringUtils.ordinalIndexOf(str , "/" , 3);
String result = str.substring(0,index);
我用了这个,它对我很管用。提前谢谢不行;让我们看看你尝试了什么,失败了什么。所以这不是一个代码编写服务。欢迎使用Stackoverflow!请访问并查看。有了这两个,你可以简单地完成它,我会让你做的。试试str.replaceAll/[^/]*{2}.*$1。
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());
}