如何从2个不同格式的字符串列表中解析持续时间并添加它们?

时间:2012-08-03 13:30:55

标签: java

我有两种不同格式的字符串列表,例如

08:50 09:50

10:30

06:40 07:30

03:50 05:50

3点32分

我需要迭代它们并将第一个减去01:00&第三个是00:50,第四个是02:00,计算所有人的总数是17:52 注: 该列表包含数千条记录,而不是这些记录,只需要通用解决方案

2 个答案:

答案 0 :(得分:1)

使用正则表达式在不同类型之间进行过滤?

\d\d:\d\d \d\d:\d\d应该是09:50 08:50但是10:30是假的。

有很多关于reg exps在线的教程。

http://www.regexpal.com/有助于构建新的表达式。

答案 1 :(得分:0)

我会分开这条线,看看你得到了什么。

String[] parts = line.split(" ");
switch(parts.length) {
    case 1: 
        Date time = sdf.parse(parts[0]);
        // use time.
        break;
    case 2:
        Date time1 = sdf.parse(parts[0]);
        Date time2 = sdf.parse(parts[1]);
        // use time1 and time2
        break;
    default:
        // invalid line.
}