Java 字符串上一个最后一个索引

Java 字符串上一个最后一个索引,java,delimited-text,Java,Delimited Text,有没有一种简单的方法可以获取字符串的倒数第二个分隔子字符串 String original = "/1/6/P_55/T_140"; 在此示例中,生成的子字符串将是“p_55/T_140” 我想在这个子字符串的开头找到正斜杠的索引(/) 我知道调用两次会有帮助。但是寻找一种更干净的通用方法。也许对任何人都是如此 但是寻找一种更干净的通用方法。也许对任何人都是如此 在循环中调用String.lastIndexOf(int,int)将非常有效,而且可以说非常干净: int pos = st

有没有一种简单的方法可以获取字符串的倒数第二个分隔子字符串

String original = "/1/6/P_55/T_140";
在此示例中,生成的子字符串将是
“p_55/T_140”

我想在这个子字符串的开头找到正斜杠的索引(
/

我知道调用两次会有帮助。但是寻找一种更干净的通用方法。也许对任何人都是如此

但是寻找一种更干净的通用方法。也许对任何人都是如此

在循环中调用
String.lastIndexOf(int,int)
将非常有效,而且可以说非常干净:

    int pos = str.length();
    for (int i = 0; i < n; i++) {
        pos = str.lastIndexOf('/', pos - 1);
    }
    String out = str.substring(pos + 1);
int pos=str.length();
对于(int i=0;i

这可以很容易地转化为一个助手函数,获取
str
'/'
n
,然后返回
out
,以获取媒体文件所在的文件夹名

/存储/模拟/0/WhatsApp/Media/WhatsApp视频/VID-20170812-WA0000.mp4

使用下面的代码

String folderName = filePath.substring(filePath.lastIndexOf('/',filePath.lastIndexOf('/')-1),filePath.lastIndexOf('/'));

将folderName返回为“whatsApp视频”

这也是一个非常快速的解决方案。