【发布时间】:2017-01-09 06:11:21
【问题描述】:
我正在尝试从每个循环的行中提取指定索引的子字符串。这是字符串:
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";
它不是字符串类型的数组。前 14 位数字是批号。我想在每次循环字符串时提取第二个 12 位数字,即 pin 号作为子字符串。
到目前为止,这是我的代码:
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。
//请帮助我如何最好地提取子字符串。
【问题讨论】:
-
简单地用空格和换行符分割怎么样?
-
请尝试从下次开始正确格式化您的代码。
-
使用带有单词边界的正则表达式。检查恰好前面有空格的 12 位数字并使用
Pattern和Matcher类
标签: java