当前位置: 首页 > 知识库问答 >
问题:

遍历字符串&每次提取指定索引的子字符串

郎项禹
2023-03-14
String allPins = "16101702000000 376627817243
              16101702000001 326520924472
              16101702000000 376627817243
              16101702000001 326520924472
              16101702000000 376627817243
              16101702000001 326520924472
              16101702000000 376627817243
              16101702000001 326520924472
              16101702000000 376627817243
              16101702000001 326520924472
              16101702000000 376627817243
              16101702000001 326520924472
              16101702000000 376627817243
              16101702000001 326520924472
              16101702000000 376627817243
              16101702000001 326520924472
              16101702000000 376627817243
              16101702000001 326520924472
              16101702000000 376627817243
              16101702000001 326520924472"; 
for (int i = 0; i < allPins.length();i++){

      String str = allPins.substring((28*i)+15,(28*i)+28);
      String test  = str;     

      System.out.println(test);  
}

//我得到了一个Outofbounderror。

//请帮助我如何最好地提取子串。

共有1个答案

程俊誉
2023-03-14

正如其他人已经评论的那样,如果只按空格拆分字符串,您可能会过得更容易。在本例中,我将在\s+上拆分,这意味着一个或多个空格字符。

String[] parts = allPins[i].split("\\s+");
for (int i=1; i < parts.length; i=i+2) {     // iterate and print odds only
    System.out.println(parts[i]);
}

如果您知道您的数据格式良好,即每个12位PIN之前总是有一个14位批号(并且只在之前有),那么这种方法应该很好。

如果你有不规则的数据,而你的问题并没有暗示这一点,那么你可能不得不使用匹配器。

 类似资料:
  • 问题内容: 我曾经在JavaScript中这样做: Swift没有此功能,如何做类似的事情? 问题答案: 编辑/更新: Xcode 11•Swift 5.1或更高版本 用法: 不区分大小写的样本 正则表达式样本

  • 问题内容: 我有这样定义的多行字符串: 我们用作我正在编写的解析器的测试输入的字符串。解析器功能接收-object作为输入并对其进行迭代。它还确实直接调用该方法以跳过行,因此我确实需要一个迭代器作为输入,而不是可迭代的。我需要一个迭代器,它可以在字符串的各个行之间进行迭代,就像-object可以在文本文件的行之间进行迭代一样。我当然可以这样: 是否有更直接的方法?在这种情况下,字符串必须遍历一次以

  • 问题内容: 我有一个允许用户上载文本文件或将文件内容复制/粘贴到文本区域的表格。我可以轻松地区分两者,然后将它们输入的任何一个放入字符串变量中,但是我从那里去哪里呢? 我需要遍历字符串的每一行(最好不要担心不同机器上的换行符),确保它只有一个令牌(没有空格,制表符,逗号等),清理数据,然后生成一个SQL查询基于所有方面。 我是一个非常优秀的程序员,所以我知道如何做的一般想法,但是自从使用PHP以来

  • 本文向大家介绍如何在JSP中检查指定子字符串的字符串中的索引?,包括了如何在JSP中检查指定子字符串的字符串中的索引?的使用技巧和注意事项,需要的朋友参考一下 的FN:的indexOf()函数返回指定的子串中的索引。 语法 该FN:的indexOf()函数的语法如下- 示例 以下是解释fn:indexOf()函数功能的示例- 您将收到以下结果-

  • 我已经尝试遍历字符串并手动替换它们,但计数是关闭的。我也尝试过使用列表、数组、stringbuilder等,但我无法使其工作: 我觉得必须有一种简单的方法来用子字符串替换字符串中的单个字符,而不必进行所有这些迭代。我说错了吗?