regex 在Google表格中将文本持续时间转换为格式化持续时间

sdnqo3pr  于 2023-10-22  发布在  Go
关注(0)|答案(1)|浏览(91)

我试图转换一列的持续时间拉从外部来源的格式作为一个文本基础的持续时间(例如。0 h 2 m 52 s 733 ms)转换成一个持续时间,我可以在具有其他持续时间的公式中使用它。
我试过修剪,但遇到的问题,因为有时分钟是2位数和毫秒是从1-999
我希望完成的是:
| 列A|色谱柱B|列C|
| --|--|--|
| 0h 2m 52s 733ms|时间03:34| B - A|
Here's what i'm hoping to achieve

8gsdolmq

8gsdolmq1#

在列单元格C2中使用此公式

= B2-(
  trim(left(A2,search("h",$A$2)-1))
  &":"&
  trim(mid($A$2,search("h",$A$2)+2,search("m",$A$2)-search("h",$A$2)-2))
  &":"&
  trim(mid($A$2,search("m",$A$2)+2,search("s",$A$2)-search("m",$A$2)-2))
  )

逻辑
这个公式使用了传统的长手法:

  • 查找字符串中各种标识字母的索引
    *小时search("h",$A$2)
    *分钟search("m",$A$2)
    *search("s",$A$2)
  • 使用索引值提取相关值
    *小时数trim(left($A$2,hours-1))
    *分钟trim(mid($A$2,hours+2,minutes-hours-2))
    *秒数trim(mid($A$2,minutes+2,seconds-minutes-2))
  • 合并
  • = Hours&":"&Minutes&":"&Seconds
    结果

相关问题