免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 赛萌
打印 上一主题 下一主题

怎么求两个日期中间的间隔日期? [复制链接]

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
11 [报告]
发表于 2016-03-21 21:07 |只看该作者
回复 10# 赛萌
不是 perl 实现不了, 而是有些条件并不是很清晰, 未能找到合适的键. 而且有部分数据格式不一致, 这倒是给处理增加了难度.

   

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
12 [报告]
发表于 2016-03-21 22:34 |只看该作者
本帖最后由 sunzhiguolu 于 2016-03-21 22:37 编辑

我查了下, 主要问题集中在第二列.
  1. 443237          17      0       生日特礼        2016-03-07 12:25:24     2016-03-14 12:25:24 MissIndex=>1,
  2. 756903          8       1       生日特礼        2016-03-07 21:01:16     2016-03-14 21:01:16 MissIndex=>1,
  3. 529843          24      1       生日特礼        2016-03-07 23:46:07     2016-03-14 23:46:07 MissIndex=>1,
  4. 77812           23      0       生日特礼        2016-03-08 14:23:52     2016-03-15 14:23:52 MissIndex=>1,
  5. 690772          21      1       生日特礼        2016-03-08 22:06:52     2016-03-15 22:06:52 MissIndex=>1,
  6. 54815           10      1       生日特礼        2016-03-08 23:08:16     2016-03-15 23:08:16 MissIndex=>1,
  7. 778466          19      1       生日特礼        2016-03-09 06:25:43     2016-03-16 06:25:43 MissIndex=>1,
  8. 501329          22      1       生日特礼        2016-03-09 14:17:30     2016-03-16 14:17:30 MissIndex=>1,
  9. 179357          15      1       生日特礼        2016-03-09 21:07:08     2016-03-16 21:07:08 MissIndex=>1,
  10. 662143          19      1       生日特礼        2016-03-10 08:15:30     2016-03-17 08:15:30 MissIndex=>1,
  11. 653901          14      1       生日特礼        2016-03-10 09:50:30     2016-03-17 09:50:30 MissIndex=>1,
  12. 211430          19      1       生日特礼        2016-03-10 10:23:46     2016-03-17 10:23:46 MissIndex=>1,
  13. 1132            3       0       3元无门槛优惠券 2016-03-10 16:01:04     2016-03-17 16:01:04 MissIndex=>1,
  14. 1366            3       1       3元无门槛优惠券 2016-03-10 16:01:07     2016-03-17 16:01:07 MissIndex=>1,
  15. 1132            3       1       3元无门槛优惠券 2016-03-10 16:01:28     2016-03-17 16:01:28 MissIndex=>1,
  16. 1366            3       1       3元无门槛优惠券 2016-03-10 16:02:56     2016-03-17 16:02:56 MissIndex=>1,
  17. 231417          3       1       3元无门槛优惠券 2016-03-10 16:03:12     2016-03-17 16:03:12 MissIndex=>1,
  18. 1132            3       1       3元无门槛优惠券 2016-03-10 16:03:31     2016-03-17 16:03:31 MissIndex=>1,
  19. 231417          3       1       3元无门槛优惠券 2016-03-10 16:03:39     2016-03-17 16:03:39 MissIndex=>1,
  20. 231417          3       1       3元无门槛优惠券 2016-03-10 16:04:08     2016-03-17 16:04:08 MissIndex=>1,
  21. 1262            3       1       3元无门槛优惠券 2016-03-10 16:21:17     2016-03-17 16:21:17 MissIndex=>1,
  22. 868962          3       1       3元无门槛优惠券 2016-03-10 16:22:24     2016-03-17 16:22:24 MissIndex=>1,
  23. 3285            3       1       3元无门槛优惠券 2016-03-10 17:19:53     2016-03-17 17:19:53 MissIndex=>1,
  24. 3365            3       1       3元无门槛优惠券 2016-03-10 17:52:11     2016-03-17 17:52:11 MissIndex=>1,
  25. 241567          17      1       生日特礼        2016-03-11 08:11:49     2016-03-18 08:11:49 MissIndex=>1,
  26. 707166          11      1       生日特礼        2016-03-12 00:11:41     2016-03-19 00:11:41 MissIndex=>1,
  27. 73863           11      1       生日特礼        2016-03-12 00:42:19     2016-03-19 00:42:19 MissIndex=>1,
  28. 315082          5       1       生日特礼        2016-03-12 07:02:20     2016-03-19 07:02:20 MissIndex=>1,
  29. 351587          18      0       生日特礼        2016-03-12 08:09:38     2016-03-19 08:09:38 MissIndex=>1,
  30. 30027           11      0       生日特礼        2016-03-12 09:14:02     2016-03-19 09:14:02 MissIndex=>1,
  31. 452351          5       1       生日特礼        2016-03-12 09:16:44     2016-03-19 09:16:44 MissIndex=>1,
  32. 895650          14      0       生日特礼        2016-03-12 10:40:21     2016-03-19 10:40:21 MissIndex=>1,
  33. 121916          11      1       生日特礼        2016-03-12 20:25:08     2016-03-19 20:25:08 MissIndex=>1,
  34. 267709          21      1       生日特礼        2016-03-13 08:02:15     2016-03-20 08:02:15 MissIndex=>1,
  35. 522476          5       1       生日特礼        2016-03-13 21:47:43     2016-03-20 21:47:43 MissIndex=>1,
  36. 281901          5       1       生日特礼        2016-03-14 08:25:59     2016-03-21 08:25:59 MissIndex=>1,
  37. 656921          21      1       生日特礼        2016-03-14 09:20:05     2016-03-21 09:20:05 MissIndex=>1,
  38. 35379           6       1       生日特礼        2016-03-14 13:14:07     2016-03-21 13:14:07 MissIndex=>1,
  39. 516361          22      1       生日特礼        2016-03-14 14:24:29     2016-03-21 14:24:29 MissIndex=>1,
  40. 529546          11      1       生日特礼        2016-03-14 21:13:29     2016-03-21 21:13:29 MissIndex=>1,
  41. 189474          18      1       生日特礼        2016-03-15 00:04:45     2016-03-22 00:04:45 MissIndex=>1,
  42. 410548          12      1       生日特礼        2016-03-15 11:48:38     2016-03-22 11:48:38 MissIndex=>1,
  43. 551424          6       1       生日特礼        2016-03-15 23:08:00     2016-03-22 23:08:00 MissIndex=>1,
  44. 209302          24      0       生日特礼        2016-03-16 00:10:16     2016-03-23 00:10:16 MissIndex=>1,
  45. 178246          19      0       生日特礼        2016-03-16 00:49:01     2016-03-23 00:49:01 MissIndex=>1,
  46. 260674          25      0       生日特礼        2016-03-16 15:59:52     2016-03-23 15:59:52 MissIndex=>1,
  47. 277951          25      1       生日特礼        2016-03-16 19:09:33     2016-03-23 19:09:33 MissIndex=>1,
  48. 27918           6       1       生日特礼        2016-03-17 04:29:54     2016-03-24 04:29:54 MissIndex=>1,
  49. 411083          10      0       生日特礼        2016-03-17 08:14:47     2016-03-24 08:14:47 MissIndex=>1,
  50. 518526          21      1       生日特礼        2016-03-17 15:33:52     2016-03-24 15:33:53 MissIndex=>1,
  51. 435823          12      1       生日特礼        2016-03-17 16:54:59     2016-03-24 16:55:00 MissIndex=>1,
  52. 148980          10      0       生日特礼        2016-03-18 15:01:40     2016-03-25 15:01:40 MissIndex=>1,
  53. 654819          20      1       生日特礼        2016-03-18 15:53:27     2016-03-25 15:53:28 MissIndex=>1,
  54. 454772          20      1       生日特礼        2016-03-18 22:57:16     2016-03-25 22:57:16 MissIndex=>1,
  55. 442462          21      1       生日特礼        2016-03-18 23:02:20     2016-03-25 23:02:20 MissIndex=>1,
  56. 400820          21      1       生日特礼        2016-03-19 07:49:48     2016-03-26 07:49:48 MissIndex=>1,
  57. 524311          25      0       生日特礼        2016-03-20 04:52:31     2016-03-27 04:52:31 MissIndex=>1,
  58. 134446          15      0       生日特礼        2016-03-20 08:47:07     2016-03-27 08:47:07 MissIndex=>1,
  59. 641344          10      0       生日特礼        2016-03-20 12:12:12     2016-03-27 12:12:12 MissIndex=>1,
  60. 435679          13      1       生日特礼        2016-03-20 12:32:21     2016-03-27 12:32:21 MissIndex=>1,
  61. 491757          9       1       生日特礼        2016-03-21 11:21:18     2016-03-28 11:21:18 MissIndex=>1,
  62. 171692          21      0       生日特礼        2016-03-21 11:52:18     2016-03-28 11:52:18 MissIndex=>1,
  63. Stat <62> lines.
复制代码
大家进行处理的时候, 还请多加小心才好...

论坛徽章:
2
15-16赛季CBA联赛之山西
日期:2016-03-03 17:51:32CU十四周年纪念徽章
日期:2016-03-21 18:45:39
13 [报告]
发表于 2016-03-21 23:28 |只看该作者
回复 12# sunzhiguolu


    谢谢。不过你的说是什么意思?这个东西不能写哈希,因为都有重复,没有一列里的内容不重复的

论坛徽章:
6
15-16赛季CBA联赛之新疆
日期:2016-03-22 22:34:5915-16赛季CBA联赛之山东
日期:2016-04-11 09:08:41程序设计版块每日发帖之星
日期:2016-06-28 06:20:00程序设计版块每日发帖之星
日期:2016-07-19 06:20:00每日论坛发贴之星
日期:2016-07-19 06:20:0015-16赛季CBA联赛之青岛
日期:2016-07-20 22:44:17
14 [报告]
发表于 2016-03-21 23:39 |只看该作者
Date::Calc::Iterator

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
15 [报告]
发表于 2016-03-21 23:40 |只看该作者
回复 13# 赛萌
数据文件是你提供的, 找到一个解决方案是你的期望.
不知道现在的你如何打算?

   

论坛徽章:
2
15-16赛季CBA联赛之山西
日期:2016-03-03 17:51:32CU十四周年纪念徽章
日期:2016-03-21 18:45:39
16 [报告]
发表于 2016-03-22 00:05 |只看该作者
回复 15# sunzhiguolu

我给上司说perl实现不了
   

论坛徽章:
6
15-16赛季CBA联赛之新疆
日期:2016-03-22 22:34:5915-16赛季CBA联赛之山东
日期:2016-04-11 09:08:41程序设计版块每日发帖之星
日期:2016-06-28 06:20:00程序设计版块每日发帖之星
日期:2016-07-19 06:20:00每日论坛发贴之星
日期:2016-07-19 06:20:0015-16赛季CBA联赛之青岛
日期:2016-07-20 22:44:17
17 [报告]
发表于 2016-03-22 02:34 |只看该作者
本帖最后由 RE_HASH 于 2016-03-22 05:53 编辑

回复 14# RE_HASH

1。用1楼的数据
2。CPAN 安装Date::Calc::Iterator模块
-------------------
   
use Date::Calc::Iterator;

while (<>)
{
  s/  +/\t/g;
  my @F = split /\t/, $_;
  my $key = join "\t" , @F[0,1,3];
  
  my @start = /(\d{4})-(\d{2})-(\d{2})/;
  my @end = /\G.*(\d{4})-(\d{2})-(\d{2})/;
  
  my $i1 = Date::Calc::Iterator->new(from => \@start , to => \@end);
  while ($D = $i1->next)
  {
          my $Date = join '-', @$D;
          $Date =~ s/-(\d)\b/-0\1/g;
          $OUT->{$Date}->{$key} ++;
  }
}

foreach  $D (sort keys %$OUT)
{
  foreach  $key (sort keys %{$OUT->{$D}})
  {
          print "$D\t$key\t$OUT->{$D}->{$key}\n" ;
  }   
}


——————
$> perl dates.pl zz
2016-03-07      25      2       二元代金券      8
2016-03-08      25      2       二元代金券      8
2016-03-09      25      2       二元代金券      8
2016-03-10      25      2       二元代金券      8
2016-03-11      25      2       二元代金券      8
2016-03-12      25      2       二元代金券      8
2016-03-13      25      2       二元代金券      8
2016-03-14      25      2       二元代金券      8

论坛徽章:
2
15-16赛季CBA联赛之山西
日期:2016-03-03 17:51:32CU十四周年纪念徽章
日期:2016-03-21 18:45:39
18 [报告]
发表于 2016-03-22 12:09 |只看该作者
回复 17# RE_HASH


    哇咔咔,好厉害,谢谢。

论坛徽章:
0
19 [报告]
发表于 2016-03-22 14:06 |只看该作者
Perl非常擅长干这种活!

论坛徽章:
2
15-16赛季CBA联赛之山西
日期:2016-03-03 17:51:32CU十四周年纪念徽章
日期:2016-03-21 18:45:39
20 [报告]
发表于 2016-03-22 19:50 |只看该作者
回复 19# iamlimeng


   啊???真的吗,原谅我,我还是个低级的菜鸟,还请大神指点一二,谢谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP