免费注册 查看新帖 |

Chinaunix

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

动脑的机会来了 [复制链接]

论坛徽章:
0
61 [报告]
发表于 2007-09-25 16:40 |只看该作者
偶好好动了下脑筋,写了个
  1. #! /usr/bin/perl -w
  2. #        read.pl
  3. use strict;        use warnings;
  4. my $filename;
  5. if (!($filename=$ARGV[0])) {$filename = "Log.html"}
  6. open(FN,$filename)||die $!;
  7. my ($proj,$conf,$err,$warn);
  8. while(<FN>){
  9.         if (/Project: (\w+), Configuration: (.*?)</){
  10.                 $proj="None" if !defined($proj=$1);
  11.                 $conf="None" if !defined($conf=$2);
  12.                 print "Project = ",$proj,"\nConfiguration = ",$conf,"\n";
  13.         }
  14.         if($proj && $_=~/$proj - (\d+) .*?(\d+)/){
  15.                 $err="None" if !defined($err=$1);
  16.                 $warn ="None" if !defined($warn=$2);
  17.                 print "error = ",$err,"\nwarning = ",$warn,"\n";
  18.         }
  19. }
复制代码

你试试看,运行的时候,在shell下 ./read.pl Log.html
你的是linux吗?

8好意思,刚才有错,现在更正了,和89楼的一致了

[ 本帖最后由 perljoker 于 2007-9-25 17:28 编辑 ]

论坛徽章:
0
62 [报告]
发表于 2007-09-25 16:41 |只看该作者
老大,我没必要骗你吧。你这么热心的帮我。事实如此啊~@!#

论坛徽章:
0
63 [报告]
发表于 2007-09-25 16:43 |只看该作者
你把你那行 正则式 发出来看看?

论坛徽章:
0
64 [报告]
发表于 2007-09-25 16:45 |只看该作者
你测过了》??win下的。。
完全读不出来&

论坛徽章:
0
65 [报告]
发表于 2007-09-25 16:47 |只看该作者
哦,你要是整个copy我的代码的话,得注意

我那个测试文件是 .html 的后缀,你的是 .htm

论坛徽章:
0
66 [报告]
发表于 2007-09-25 16:48 |只看该作者
就完全套用你的
   if ($Project and $str =~ m{$Project - (\d+) error\(s\), (\d+) warning\(s\)})
                {
                 $Errors =$1 if defined $1;
                 $Warnings =$2 if defined $2;
                }       

为何0读不出来,难道被当作字符处理啊


注意到了,我都改成是我的信息了

论坛徽章:
0
67 [报告]
发表于 2007-09-25 16:51 |只看该作者


我不知道了

论坛徽章:
0
68 [报告]
发表于 2007-09-25 16:54 |只看该作者
原帖由 perljoker 于 2007-9-25 16:40 发表
$err=$1 if $1;


你这么写是有问题的, 0 的时候打印不出来

论坛徽章:
0
69 [报告]
发表于 2007-09-25 16:54 |只看该作者
这也太另人遗憾了吧

那能怎么写啊。。
对了$1,$2是对应正则表达式上的代号对不。

[ 本帖最后由 life382 于 2007-9-25 16:55 编辑 ]

论坛徽章:
0
70 [报告]
发表于 2007-09-25 16:54 |只看该作者
你真的用的是 if defined $xxx
而不是 if $xxx ?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP