加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl – 解析电子邮件标题的最小程序是什么?

发布时间:2020-12-15 23:29:10 所属栏目:大数据 来源:网络整理
导读:作业: http://www.cs.rit.edu/~waw/networks/prob1.082.html 好吧,我仍然很困惑为什么这个问题被要求我的数据通信和网络课程,但这是我的作业中的问题: Write a computer program that reads the header on an e-mail message and deletes all lines except
作业: http://www.cs.rit.edu/~waw/networks/prob1.082.html

好吧,我仍然很困惑为什么这个问题被要求我的数据通信和网络课程,但这是我的作业中的问题:

  1. Write a computer program that reads the header on an e-mail message and
    deletes all lines except those that
    begin with

    From:,To:,Subject: and Cc:.

CONTEST — Who can write the shortest
program that does this.

在思考了一下后,我决定以下Perl代码尽可能小.

#!/usr/bin/perl

while (<>) { print "$_" if ($_ =~ m/^(To:|From:|Subject:|Cc:)/); }

所有这一切都像一个过滤器,唯一的输出是以From:,To:,Subject:和Cc:开头的行,如问题中所指定的那样.由于没有任何具体细节,我认为上述代码至少可以正确回答问题.

现在,我想知道一个程序可能为此写得多么小?我可以理解,如果没有人想发布代码,因为他们认为我会将它用于作业,但我或多或少地寻找可以帮助我编写最短程序的建议和技巧.

另外,我确信最短的是指实际的代码长度.他确实提到脚本语言是要走的路,所以我怀疑他正在考虑解释器涉及的开销.这也意味着他不关心使用哪种语言.

谢谢你的期待!

编辑:谢谢你的建议!我在这里读了很长一段时间的问题,希望将来我能做出更多贡献.另外,我将Perl代码减少到55个字节的一些建议.我认为我们不需要处理像多行标题这样的东西.

奖励:谁能找到一个很好的理由,为什么在我们讨论分组交换和客户端/服务器架构等问题的课程中提出这个问题?

编辑2:为了记录,我的教授说有人用55字节这样做了.我认为可能的唯一方法是,他只是要求像上面这样的简单实现.

解决方法

一些提示:

>打印“$_”等于打印
> while(<>){…}可以通过在#上添加-n来替换#!线/
> $_ = ~m //等于//
>你输入四个:一个人足够好.

就像是

#!/usr/bin/perl -n
print if /^(To|From|Subject|Cc):/;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读