【发布时间】:2015-08-27 15:23:32
【问题描述】:
我在一个文件中有多个这样的字符串,每行一个:
[random string] was [failed/passed] 1y 2mo 3d 1h 51m 2s ago [some string]
现在我要做的是提取 6 个变量(年、月、日、小时、分钟、秒)中的持续时间,以使用“日期”函数计算日期。 我还想在变量(例如 O/1)中获取通过/失败。
我遇到了3个问题:
- 我无法读取包含这些字符串的文件中的每一行(for 循环不能很好地工作......也许一段时间会更好)
如果我设法读取了一个字符串,我尝试使用 cut 对其进行解析,但我不知道如何去掉字母 (y,mo,h...) 并只保留数字。
持续时间格式是可变的;不到一年时,它可能是 1mo 2h 3s,或 1y 3d 58m 3s,或 3h 5s ......等等。我不知道如何处理这种可变性。我猜该命令必须检查字母并按其功能分配,然后将 0 分配给不存在的字母。
非常感谢您的帮助!
【问题讨论】:
标签: python string perl date datetime