在Java中将字符串划分为子字符串 - java

我有一个字符串1122333344555566778888我需要对其进行子字符串化,结果得到[11, 22, 3333, 44, 5555, 66, 77, 8888]有可能以一种漂亮的方式做到这一点,还是我需要对其进行硬编码,然后八次使用string.substring(beginning, ending)函数,然后放入array中?

编辑:字符串不仅可以包含重复数字。 AB CG HERD KJ 98HQ 0K 1E OOQW也是例子!

参考方案

使用模式:((\d)\2*)

String input = "1122333344555566778888";
Pattern p = Pattern.compile("((\\d)\\2*)");
Matcher m = p.matcher(input);
while (m.find()) {
    System.out.println("Found " + m.group(1));
}

产生:

11
22
3333
44
5555
66
77
8888

编辑:如果其数字以及空格和字母使用模式(([\d\w\s])\2*)

Java String.substring()与Oracle 11g列VARCHAR2大小之间的字符串长度定义不一致 - java

我用这样的表设置数据库:CREATE TABLE t_audit_log ( description VARCHAR2 (2500) ); 在使用它的Java应用程序中,我使用Hibernate将数据类映射到它上,并确保不生成SQLExceptions,将这种截断算法放在属性getter中:private static final int MAX_STRIN…

Java:我可以在Hashmaps中使用数组吗? - java

我可以在Hashmaps中使用数组吗?如果是这样,则声明这种哈希图的确切语法是什么?谢谢 参考方案 数组也是对象。甚至像int[]这样的原始数组。Map<String,String[]> map = new HashMap<String,String[]>();

Java:找到特定字符并获取子字符串 - java

我有一个字符串4.9.14_05_29_16_21,我只需要获取4.9。数字各不相同,所以我不能简单地获得此char数组的前三个元素。我必须找到最正确的.并将其子字符串化直到那里。我来自Python,因此我将展示Python的实现方法。def foobar(some_string): location = some_string.rfind('.&…

Java string.hashcode()提供不同的值 - java

我已经在这个问题上停留了几个小时。我已经注释掉所有代码,认为这与数组超出范围有关,但是这种情况仍在发生。我正在尝试使用扫描仪从文件中读取输入,存储数据并稍后使用哈希码获取该数据。但是哈希值不断变化。public static void main(String[] args) { //only prior code is to access data char…

Java-固定大小的列表与指定初始容量的列表之间的差异 - java

我在理解这一点上遇到了问题。当我们做 List<Integer> list = Arrays.asList(array); 我们不能在该列表上使用添加,删除之类的方法。我知道Arrays.asList()返回固定大小的列表。我不明白的是,如果我们创建一个具有指定初始容量的列表,例如List<Integer> list2 = new A…