从混合了字符串和整数的数组中解析整数

时间:2019-11-22 21:34:14

标签: java parsing

我有一个像这样的字符串

"Anderson, T",CWS,SS,123,498,81,167,32,0,18,56,15,109,17,5,0.335,0.357,0.508,0.865

我需要提取每个部分。香港专业教育学院已经解析了拳头三个字符串(“安德森,T”,CWS,SS),但现在我需要提取123,而我在执行时遇到了一些麻烦。我对前三个字段所做的方式是我仅使用line.split

public static String parsePOS(String line) {
    String[] tokens = line.split(",(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)");
    return tokens[2];
}

但是我不能将line.split与int数组一起使用。有人可以帮我吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作:

public class Main {
    public static void main(String[] args) {
        String str="\"Anderson, T\",CWS,SS,123,498,81,167,32,0,18,56,15,109,17,5,0.335,0.357,0.508,0.865";
        int x=Integer.parseInt(parsePOS(str));
        System.out.println(x);//123
        System.out.println(x+1);//124
    }
    public static String parsePOS(String line) {
        String[] tokens = line.split(",(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)");
        //System.out.println(Arrays.toString(tokens));
        return tokens[3];
    }
}

使用Integer.parseInt(String)来解析String格式的整数。