找回密码
 加入
搜索
查看: 8097|回复: 8

[AU3基础] 【已解决】关于日期格式转换

  [复制链接]
发表于 2013-8-12 00:03:42 | 显示全部楼层 |阅读模式
本帖最后由 chamlien 于 2013-8-18 14:30 编辑

好久没来了,一来就发问题,都不好意思了....

如$time="2013/8/4 12:23:34"
或者$time="2013-8-4 12:23:34"
或者$time="2013年8月4 12:23:34"

如何用正则表达式改成$time="20130804"呢?
也就是去掉中间的分隔符,并且连后面的时间都不要,只留日期,而且日期和月份不到两位自动补上0?
发表于 2013-8-12 00:16:33 | 显示全部楼层
好像有个函数_DateTimeFormat
 楼主| 发表于 2013-8-12 00:56:09 | 显示全部楼层
回复 2# lpxx

查找了,但并不能去到分隔符,没有提供20130804的格式。
发表于 2013-8-12 12:41:50 | 显示全部楼层
Local $Str = '2013/8/14 12:23:34'
Local $aSR = StringRegExp($str, '\d+', 3)
If Not @Error And UBound($aSR) >= 3 Then MsgBox(0, 0, StringFormat('%d%02d%02d', $aSR[0], $aSR[1], $aSR[2]))
 楼主| 发表于 2013-8-12 20:13:34 | 显示全部楼层
回复 4# afan

谢谢,正则用得很棒!

其实我是想比较两个时间,如果A - B > 7,软件就停止使用,所以经过正则后,两个日期就直接可以相减了,不过貌似有点麻烦,正研究中....
发表于 2013-8-13 08:28:20 | 显示全部楼层
#Include <Date.au3>
_DateDiff
 楼主| 发表于 2013-8-17 23:52:29 | 显示全部楼层
回复 6# netegg
听说过date.au3,但是没有帮助文档,一时不会用里面的函数...
 楼主| 发表于 2013-8-18 14:30:29 | 显示全部楼层
回复 6# netegg

哈哈,原来有帮助文档,琢磨出来了!非常感谢
发表于 2014-2-16 15:18:43 | 显示全部楼层
$temp = StringRegExp($iDate,'\d+',3)
$dateNoBar = StringFormat('%d%02d%02d',$temp[0],$temp[1],$temp[2])
测试 成功
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-3 22:58 , Processed in 0.084388 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表