Java - 如何根据特定长度拆分字符串?

时间:2014-04-19 17:38:26

标签: java android substring c-strings

我想根据长度分割这个数字:11101204。喜欢分区将是111. Division2 = 01,Division3 = 2,Divison 4 = 04;即,111,01,12,04 ...我希望它以这种方式分割,如果数字只有3个数字,那么除法应该是111而休息应该是null我怎样才能实现这个目的? 非常感谢!

2 个答案:

答案 0 :(得分:2)

尝试使用String.substring(beginIndex, endIndex)

String string = "11101204";

System.out.println(string.substring(0, 3));
System.out.println(string.substring(3, 5));
System.out.println(string.substring(5, 6));
System.out.println(string.substring(6, 8));

输出:

111
01
2
04

答案 1 :(得分:0)

听起来像正则表达式的工作。您的示例不是自我一致的,因此您必须更清楚地定义您的要求并调整正则表达式以匹配。

正则表达式"(\\d{3})(\\d{2})?"将匹配" 111"或" 11101",但不是" 1110"因为第二个捕获组(您称之为"分区")不是必需的两位数。当字符串匹配时,您将使用Matcher#group(int)来获取组。对于没有匹配的组,它将返回null或空字符串,具体取决于组中的表达式是否可以匹配空字符串。

相关问题