我正在解析一个 CSV 文件,其中包含表示持续时间的文本,它可能是小时、分钟或两者的任意组合。例如:
- “1小时30分钟”
- “2小时”
- “45分钟”
我希望能够做到这一点:duration = h.hours + m.minutes
并确保它h
是小时(如果存在)并且对于m
.
我尝试用这个 regex 解决这个问题/(\d*)\s?hour\D*(\d*)\s?min/)
,但这不会单独检测几分钟或几个小时。
所以我把它改成了 this /(\d+)\s?\D*\s?(\d*)/
,但这也是错误的,因为无法判断该值是一小时还是一分钟,所以我可以将它转换为hour
or minutes
。
我很困惑哪种方式可以在我的应用程序中解决这个问题。是正则表达式、哈希、匹配还是任何其他方式?任何帮助或建议表示赞赏。