免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3017 | 回复: 7

日期正则表达式新鲜出炉,唯独GUN awk无法匹配,特来求解 [复制链接]

论坛徽章:
0
发表于 2012-01-04 01:24 |显示全部楼层
日期正则表达式新鲜出炉:
(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})([-\/\._])?(((0[13578]|1[02])([-\/\._])?(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)([-\/\._])?(0[1-9]|[12][0-9]|30))|(02([-\/\._])?(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))([-\/\._])?02([-\/\._])?29) ?(0[0-9]|[1-2][0-3])([0-5][0-9])([0-5][0-9])
可匹配如下格式(支持判断闰年闰月等情况)
20120229235959
2012-02-29 23:59:59
2012/02/29 23:59:59
2012.02.29 23:59:59
2012_02_29 23:59:59

目前测试了sed -r     grep -E   grep -P  都可以正常匹配,唯独GUN awk 使用 ~ 无法匹配。特来此求解!

论坛徽章:
0
发表于 2012-01-04 01:55 |显示全部楼层
本帖最后由 mpstat 于 2012-01-04 02:00 编辑

awk好像有个选项是支持{}的正则表达式的,你去man一下.默认是不支持{}的


搜了一下,是 --re-interval

论坛徽章:
0
发表于 2012-01-04 02:25 |显示全部楼层
这个看得晕死

论坛徽章:
145
技术图书徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11狮子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龙
日期:2014-01-08 15:26:12技术图书徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
发表于 2012-01-04 09:40 |显示全部楼层
回复 1# helpid

只能说....
问题不少,累死人,又没得到结果.....

$ echo "2012-02-29 23:59:59" | grep -oP "(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})([-\/\._])?(((0[13578]|1[02])([-\/\._])?(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)([-\/\._])?(0[1-9]|[12][0-9]|30))|(02([-\/\._])?(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))([-\/\._])?02([-\/\._])?29) ?(0[0-9]|[1-2][0-3]):?([0-5][0-9]):?([0-5][0-9])"
2012-02-29 23:59:59

$ echo "2012-02-28 23:59:59" | grep -oP ...
2012-02-28    <--没有时间

$ echo "2012-02-28 15:59:59" | grep -oP ...
2012-02-28    <--没有时间

$ echo "2012-02-29 15:59:59" | grep -oP ...
           <----最后连结果也没了....

论坛徽章:
3
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:51:162015年亚洲杯之阿曼
日期:2015-04-07 20:00:59
发表于 2012-01-04 10:10 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
发表于 2012-01-04 20:50 |显示全部楼层
楼主再加把油,搞出来之后让大家学习下

论坛徽章:
0
发表于 2012-01-04 20:57 |显示全部楼层
可匹配如下格式(支持判断闰年闰月等情况)
:wink:期待这么强大的功能,等着copy&paste

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
发表于 2012-01-05 09:46 |显示全部楼层
强大的正则
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP