perl语言入门第8章练习题
发布时间:2020-12-16 00:14:09 所属栏目:大数据 来源:网络整理
导读:1. [8]使用模式测试程序。创造一个模式能匹配字符串match。使用字符串beforematchafter 进行测试。输出结果将其三部 分放在正确位置了吗? #! /usr/bin/perlwhile(){ #获取输入,从文件或者是从键盘 if(/match/){ print "It matches $`$$'n";//打印出匹配的
1. [8]使用模式测试程序。创造一个模式能匹配字符串match。使用字符串beforematchafter 进行测试。输出结果将其三部 分放在正确位置了吗?
#! /usr/bin/perl while(<>){ #获取输入,从文件或者是从键盘 if(/match/){ print "It matches $`$<&$>'n";//打印出匹配的单词,匹配到的用<>括起来 } } 2. [7]使用模式测试程序,创造一个模式能匹配任何单词(w 意义下的单词),但这个单词必需以字母a 结尾。它匹配wilma #! /usr/bin/perl while(<>){ if(/bw*ab/){ print "It matches |$`<$&>$'| n"; } } 3. [5]修改第二题的程序,使之将由a 结尾的单词放到$1 之中。同时修改源代码,使此变量对应的值被放在单引号之中,
#! /usr/bin/perl while(<>){ if(/b(w*a)b/){ print "$1 contains '$1' n"; } }4. [5]额外练习:修改第三题程序,使之能捕捉由a 结尾的单词之后的5 个字符(如果有那么多),并将之放入一个独立 变量中。例如,如果输入的是I saw Wilma yesterday,则紧接的5 个字符是yest(前有空格)。如果输入是I,Wilma!, 则只有一个字符。它现在还能匹配wilma 吗? #! /usr/bin/perl while(<>){ if(/bw*ab(.{5})/){#单个字符出现五次 print "$1 contains '$1' n"; } }5. [5]写一个程序(不是测试程序),能输出任何由空白结尾的输入行(非换行符)。在输出的结尾处放置一个标记符,使 之能标记出空白。 #! /usr/bin/perl while(<>){ if(/(.*)(s+$)/){#任意个字符,并以多空白结尾 print "$1 nullFlagn"; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |