C# 如何筛选时间串和计算时间差

来源:互联网 发布:360度旋转代码js 编辑:程序博客网 时间:2024/06/05 17:55

 

OTA LOG    SACH/Route Update/Route Update                   05:56:21.105     Channel: 78, Pilot PN: 452

OTA LOG    SRTCH/Route Update/Traffic Channel Complete      05:56:21.437     Channel: 160, Pilot PN: 452

 

 

    经常遇到带有如上时间格式的多行字符串,需要计算其中的时间差,直接用心算或者手算,真的很费劲。这种机械性的活当然交给程序来做,是最合适不过的了。

 

    要计算这种时间差,需要两个步骤:

    1. 从文本行中筛选出特定格式的时间串;

    2. 计算这种时间串的时间差。

 

    好,先看步骤1:

    怎么筛选呢?哈哈,当然我不会傻到自己再写规则去过滤,这种活,不正好是正则表达式擅长的嘛。

    C#中使用正则表达式,需要先using...

 

 

    下面说如何使用这个正则表达式来筛选出时间字符串:

 

 

   既然已经筛选出来了,下一步看步骤2,计算时间差,这里我搞了个class:

 

    有点丑陋,不过能用就行。

 

    假如我在步骤1已经筛选了2个时间字符串,直接调用这个class计算就行了。

 

 

    结语:C#的这个功能还是很实用,而且很简单。我之前也用C++实现过相同的功能,天哪,需要用到boost,非常费劲。为了以后用到相同功能时不至于没地方找代码,特立此存照。

 

原创粉丝点击