动态正则表达式的妙用
发布时间:2020-12-14 01:59:45 所属栏目:百科 来源:网络整理
导读:今天一个朋友想要实现将一个文本文件中的时间向前推8个小时,以下是文本的格式,将其中的"20121105 10"替换为“20121105 02” 看起来似乎比较简单,但是问题是,如果遇到小时8小时的,就得向前推一天,如果遇到一个月的第一天,就得向前推一个月,并且 判断
今天一个朋友想要实现将一个文本文件中的时间向前推8个小时,以下是文本的格式,将其中的"20121105 10"替换为“20121105 02” 看起来似乎比较简单,但是问题是,如果遇到小时8小时的,就得向前推一天,如果遇到一个月的第一天,就得向前推一个月,并且 判断那个月有多少天,因此需要很多的分支语句来完成。 借助Matlab强大的时间操作函数datenum,将时间转换成天,然后减去1/3天,再用datestr函数格式化输出,但是这一切有了动态 的正则表达式,就如虎添翼了
以下是我的实现过程 fprintf(fopen('test2.txt','w'),'%s',... regexprep(fileread('A.TXT'),'(d{8}sd{2})',... '${datestr(datenum($1,''yyyymmdd HH'')-1/3,''yyyymmdd HH'')}')); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |