【问题标题】:Extract substring in of a text提取文本中的子字符串
【发布时间】:2019-11-24 13:10:06
【问题描述】:

我正在编写一个解析器,它读取特定文件中的所有行并对其进行处理!我被这个子字符串Abc [123] 卡住了,其中ABC 应该作为一个字符串存储,123 作为另一个字符串。所以我想出了这个解决方案

lines.get(i).substring(0,lines.get(i).lastIndexOf("["))

这给我字符串abc

lines.get(i).substring(lines.get(i).lastIndexOf("["));

上面有人给我字符串123],但我不想要] 最后我可以为我的方法做任何更新吗?

【问题讨论】:

    标签: java substring


    【解决方案1】:

    改变

    lines.get(i).substring(lines.get(i).lastIndexOf("["));
    

    lines.get(i).substring(lines.get(i).lastIndexOf("[") + 1,lines.get(i).lastIndexOf("]"));
    

    【讨论】:

      【解决方案2】:

      将正则表达式与组结合使用会怎样?

      Pattern pattern = Pattern.compile("([A-Za-z ]{1,})([\[]{1})([0-9]{1,})");
      for(String line : lines){
        Matcher matcher = pattern.matcher(line);
        while (matcher.find()) {
          System.out.println("group 1: " + matcher.group(1));
          System.out.println("group 3: " + matcher.group(3));
        }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-02-08
        • 2013-08-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多