java - 字符串上一个最后一个索引

标签 java csv

是否有一种简单的方法来获取字符串的倒数第二个分隔子字符串?

String original = "/1/6/P_55/T_140";

在此示例中,生成的子字符串将是 "P_55/T_140"

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

我知道 String.lastIndexOf() 调用两次会有帮助。但是正在寻找一种通用的更清洁的方法。也许对任何 N。

最佳答案

But looking for a cleaner approach which is generic. Perhaps to any N.

在循环中调用 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);

这可以很容易地变成一个辅助函数,它接受 str'/'n,并返回 out.

关于java - 字符串上一个最后一个索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10785987/

相关文章:

java - 如何读取带有 XML 内容的字符串的内容并将其保存为 XML

python - 将深层嵌套的 json 从 facebook 转换为 python 中的数据框

java - setEnabled(false) -> (true)/selectableItemBackground 作为可绘制后没有可见的按钮反馈?

java - spring boot中授权写在哪里?在 Spring 拦截器或过滤器中?

java - 如何将 List<String> 写入 csv 文件并使用 supercsv 读回

regex - 如何在 Sublime-Text2 中的每个非 ascii 单词前添加换行符?

java - AppWidget 布局未显示, "widget failed to load"

2 列 Java 控制台日历

java - 获取键盘输入

csv - 将 Spark CSV 依赖项添加到 Zeppelin