java - 获取未知长度的分隔字符串的子字符串值
问题描述
给定字符串数据,用:
逗号分隔
String times = 6:10000:first,12:12000:second,18:15000:third
在上述情况下,我需要从最后一个逗号分隔列表中获取第三个值15000
或者20000
在下面的情况下
String times = 6:10000:first,12:12000:second,18:15000:third,24:20000:fourth
或者30000
在下面的情况下
String times =
6:10000:first,12:12000:second,18:15000:third,24:20000:fourth,30:30000:fourth
就像是:
public String getLastTimeFromCommaSeparatedList() {
return times.substring(mileages.lastIndexOf(':') + 2);
}
鉴于逗号分隔列表的长度未知,我不清楚如何获得所需的值。
解决方案
您可以将 substring 与 lastIndexOf 一起使用并像这样拆分:
times.substring(time.lastIndexOf(",")).split(":")[1]
演示
String[] times = {"6:10000:first,12:12000:second,18:15000:third",
"6:10000:first,12:12000:second,18:15000:third,24:20000:fourth",
"6:10000:first,12:12000:second,18:15000:third,24:20000:fourth,30:30000:fourth"
};
for (String time : times) {
System.out.println(
time.substring(time.lastIndexOf(",")).split(":")[1]
);
}
输出
15000
20000
30000
推荐阅读
- java - OptionalInt 作为输入参数
- spring - Spring微服务jwt认证
- node.js - 在 NodeJS 中使用归档器压缩音频文件
- c# - iTextSharp - 如何将 PDFLayer 转换为位图?
- haskell - Haskell 的在线平均值
- angular - 即使在令牌过期或注销后,浏览器上也不会清除 JWT 令牌
- php - 如何在 PHP FPDF 中显示十进制值?
- pandas - Pandas:将许多 id 映射到唯一 id
- undefined - TypeError:无法读取未定义的属性“allMarkdownRemark”-在盖茨比上
- jquery - 在 thymeleaf 中添加 th:each 的动态属性