我有一个String
String test = "7462356098660AE";
我想把它分成:
test1 = "746";
test2 = "2356";
test3 = "0986";
test4 = "60AE";
字符串的长度test
将始终相同。
我将如何做到这一点?
PS:我检查了其他问题,但找不到合适的答案。
我有一个String
String test = "7462356098660AE";
我想把它分成:
test1 = "746";
test2 = "2356";
test3 = "0986";
test4 = "60AE";
字符串的长度test
将始终相同。
我将如何做到这一点?
PS:我检查了其他问题,但找不到合适的答案。
String test = "7462356098660AE";
String test1 = test.substring(0,3);
String test2 = test.substring(3,7);
String test3 = test.substring(7,11);
String test4 = test.substring(11,15);
为方便起见,您可以编写这种 Splitter 类:
public class Splitter {
private final int[] borders;
private final String s;
public Splitter(String s, int... borders) {
this.s = s;
this.borders = borders;
}
public String seg(int seg) {
return s.substring(seg == 0? 0 : borders[seg-1], borders[seg]);
}
}
你会这样使用它:
final Splitter splitter = new Splitter("7462356098660AE", 3, 7, 11, 15);
for (int i = 0; i < 4; i++) System.out.println(splitter.seg(i));
不确定您的用例是什么,但如果代码的子字符串总是相同的长度,您可以使用substring()
method。你只需给它你想要的子字符串的开始和结束索引。
如果字符串对于您想要的所有字段的宽度都是固定的,您可以使用 String 的 substring/subSequence 方法,或者您可以创建正则表达式并获取捕获组的值。