如何从字符串中解析多个整数

时间:2016-07-15 19:09:03

标签: java

我有以下字符串:"B:0123EH:0234ET:0444"我需要将整数"0123; 0234; 0444"解析为单独的整数。

2 个答案:

答案 0 :(得分:1)

正则表达式可能很有用:

    String numbersStr[] = "B:0123EH:0234ET:0444".split("[A-Z]+:0");
    int numbers[] = new int[numbersStr.length - 1];

    for (int i = 1; i < numbersStr.length; i++) {
        numbers[i - 1] = Integer.parseInt(numbersStr[i]);
        System.out.println(numbers[i - 1]);
    }

现在你有一个整数数组。对于@ cricket_007的评论。您可以使用[^0-9]+替换模式。

PS;这仅在上面提到的模式重复发生时才有效

答案 1 :(得分:0)

您可以使用以下内容:

String str = "B:0123EH:0234ET:0444";
String[] words = str.split("[^0-9]+");
for(String word : words )
  System.out.println(word);

它使用原始字符串并将其拆分为单词数组,使用正则表达式分隔符表示非数字值。然后使用for循环逐个打印出来。