我有以下字符串:
其中
我想得到一个
我是这样做的:
我在想是否有更好的方法来做这件事?还有其他更高效的方法吗?
A:B:1111;domain:80;a;b
其中
A
是可选的,所以B:1111;domain:80;a;b
也是有效的输入。:80
也是可选的,所以B:1111;domain;a;b
或:1111;domain;a;b
也是有效的输入。我想得到一个
String[]
,它包含:s[0] = "A";
s[1] = "B";
s[2] = "1111";
s[3] = "domain:80"
s[4] = "a"
s[5] = "b"
我是这样做的:
List<String> tokens = new ArrayList<String>();
String[] values = s.split(";");
String[] actions = values[0].split(":");
for(String a:actions){
tokens.add(a);
}
//Start from 1 to skip A:B:1111
for(int i = 1; i < values.length; i++){
tokens.add(values[i]);
}
String[] finalResult = tokens.toArray();
我在想是否有更好的方法来做这件事?还有其他更高效的方法吗?
80
? - codaddict