中级Perl第二章习题
2. 4. 1. 习题1 [15 分钟]
写一个程序从命令行取一个文件清单, 然后用grep 把那些文件大小在1000
字节以内的文件找出来。用map 把这个清单里的每个字串前加四个空格并在
字串后面加上换行符。然后输出列表结果。
print map {" $_\n" } grep { -s $_ < } @ARGV;
2. 4. 2. 练习2 [25 分钟]
写一个程序要求用户输入一个正则表达式的模板。不要以命令行参数形式输入,
要从键盘读取。然后从一些目录中(可以是硬编码的, 如: "/etc" 或
'C:\\Windows' )中读取符合模板的文件名。重复这个操作直到用户输入空串。
要屏蔽用户输入的正斜杠("/") , 因为那是Perl 里正则表达式的分隔符;输入的
模板用换行符为分隔。要保证不会因为用户输入了一个错误的正则表达式, 如
括号不匹配之类的, 而导致程序崩溃。
chdir;
while(){
print "Please enter a regular expression>";
chomp(my $regex = <STDIN>);
last unless ( defined $regex && length $regex ) ;
print map {" $_\n"} grep {eval {/$regex/} } glob("*.*");
}
中级Perl第二章习题的更多相关文章
- 统计学习导论:基于R应用——第二章习题
目前在看统计学习导论:基于R应用,觉得这本书非常适合入门,打算把课后习题全部做一遍,记录在此博客中. 第二章习题 1. (a) 当样本量n非常大,预测变量数p很小时,这样容易欠拟合,所以一个光滑度更高 ...
- Python编程快速上手-让繁琐工作自动化-第二章习题及其答案
Python编程快速上手-让繁琐工作自动化-第二章习题及其答案 1.布尔数据类型的两个值是什么?如何拼写? 答:True和False,使用大写的T和大写的F,其他字母是小写. 2.3个布尔操作符是什么 ...
- 最小正子序列(序列之和最小,同时满足和值要最小)(数据结构与算法分析——C语言描述第二章习题2.12第二问)
#include "stdio.h" #include "stdlib.h" #define random(x) (rand()%x) void creat_a ...
- Learning Perl 第九章习题第二题
把输入文件中的所有Fred换成Larry, 不区分大小写. 知识点 1. 文本文件读写 2. 简单的正则替换 3. unless 的用法 4. $_ 的用法
- 算法竞赛入门经典第二版第二章习题-(练习Java和C++语法)
习题2-1水仙花数(daffodil) 输出1000-999中所有的水仙花数.若三位数ABC满足ABC = A3+B3+C3,则称其为水仙花数. Java: package suanfa; publi ...
- 2.x ESL第二章习题 2.8
题目 代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 3 ...
- 2.x ESL第二章习题2.4
题目 准备 $x_i\sim N(0,1)$,有$\sum_i^n x_i^2 \sim \chi^2(n)$其中$n$称为自由度,卡方分布的均值即其自由度 $x_i\sim N(\mu_i,\sig ...
- 2.x ESL第二章习题2.5
题目 描述 $y_i=x_i^T\beta+\epsilon_i$$\epsilon_i\sim N(0,\sigma^2)$ 已有训练集$\tau$,其中$X:n\times p,y:n\times ...
- 《Python自然语言处理》第二章-习题解答-练习6
问题描述:在比较词表的讨论中,创建一个对象叫做translate,通过它你可以使用德语和意大利语词汇查找对应的英语词汇.这种方法可能会出现什么问题,你能提出一个办法来避免这个问题吗? 虽然这是一道初级 ...
随机推荐
- 【转】OpenGL相关函数库介绍
原文:http://blog.chinaunix.net/uid-20638550-id-1909182.html OpenGL 函数库相关的API有核心库(gl).实用库(glu).辅助库(aux) ...
- Bayer RGB和RGB Raw
Bayer RGB和RGB Raw 对于SENSOR来说,Bayer RGB和RGB Raw两者的图象结构都是BG/GR的(Bayer pattern说的是COLOR FILTER的结构, 分为两种: ...
- DateADD日期Sql
--1. 当前系统日期.时间 select getdate() --2015-01-06 09:27:27.277 --2.时间操作 dateadd 在向指定日期加上一段时间的基础上,返回新的 ...
- XSS 简单理解
什么是XSS? XSS(Cross Site Scripting),即跨站脚本攻击,是一种常见于web application中的计算机安全漏洞.XSS通过在用户端注入恶意的可运行脚本,若服务器端对用 ...
- 算法----希尔排序(shell sort)
在分析插入排序(插入排序算法实现)的算法性能的过程时知道.当数组规模较小或者存在较多的有序子序列时.插入排序将会在非常短的时间内完毕数组的排序,为此能够设计一个单调序列h[n],将数组分为多个小的序列 ...
- Delphi中WebBrowser拦截网页Alert对话框消息(转)
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, O ...
- APUE16章的运行示例16-14
参考文章:http://blog.csdn.net/andyxie407/article/details/1672325 今天在运行在APUE第16章的16-14(客户端)和16-15(服务端)遇到了 ...
- 移动端 设置 小于12px 字体 初探
1.移动端字号规范 2. 百度字号调研 3. 绕过12px 限制 4. 缩放 5. chrome 字号
- HTML5之填写个人信息
- Oracle高版本导出dmp导入Oracle低版本报错:"不是有效的导出文件、头部验证失败"解决方法
从Oracle高版本中导出dmp,然后导入到Oracle低版本时会报错:"不是有效的导出文件.头部验证失败",解决方法: 方法一:下载软件:AlxcTools,打开后选择要修改的文 ...