我正在解析以下AWS
成本实例表:
m1.small 1 1 1.7 1 x 160 $0.044 per Hour
m1.medium 1 2 3.75 1 x 410 $0.087 per Hour
m1.large 2 4 7.5 2 x 420 $0.175 per Hour
m1.xlarge 4 8 15 4 x 420 $0.35 per Hour
这是一个包含成本的文件:
input = new Scanner(file);
String[] values;
while (input.hasNextLine()) {
String line = input.nextLine();
values = line.split("\\s+"); // <-- not what I want...
for (String v : values)
System.out.println(v);
}
然而,这给我带来了:
m1.small
1
1
1.7
1
x
160
$0.044
per
Hour
这不是我想要的...经过修正的解析值
(使用正确的正则表达式)应该是这样的:
['m1.small', '1', '1', '1.7', '1 x 160', '$0.044', 'per Hour']
为了获得正确的结果,应该使用什么样的正则表达式?可以假设这个表格始终具有相同的模式。
\\t+
进行解析的原因。这些文件非常大,所以在搜索这些文件以修复缺少制表符可能是毫无意义的。 - cybertextron\\s{2,}
吗? - PM 77-1\\s
进行分割,然后连接结果的部分。 - PM 77-1