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视频”这也是一个非常快速的解决方案。