Skip to Content
Perl语言入门(第8版)
book

Perl语言入门(第8版)

by Randal L. Schwartz, brian d foy, Tom Phoenix
October 2022
Beginner to intermediate
390 pages
7h 5m
Chinese
Southeast University Press
Content preview from Perl语言入门(第8版)
其他控制结构
201
可是,我们不是才说过
$_
是用来存储每一行的输入么?在外层循环就是这样。但
foreach
循环里,它却能循环存储每一个单词。
Perl
能正确处理
$_
的多版本重
用,这种事并不奇怪。
foreach
循环来说,每当我们在
$_
中看到一个单词时,
$total
就会递增,所以它
会是全部单词的总数。下一行(是这个例子的关键)会检查单词里是否包含任何非单
词字符(字母、数字和下划线以外的字符)。因此如果其中出现了像
Tom's
full-
sized
或者后面紧接着逗号、引号或任何其他奇怪字符的单词,那它就会匹配这个模
式,导致循环直接跳到下一个单词。
不过如果找到了一个普通的单词,比如
fred
,在此情况下,我们会将
$valid
的值
1
,连带
$count{$_}
也累加以记录此单词出现的次数。所以,在这两个循环执行完毕
后,我们就完成了对用户指定的所有文件中的每一行里的每个单词的计数。
我们不打算解释最后几行的意思。到了这里,我们希望你已经有能力应付这样的程序
代码。
last
一样,
next
也可以用在
5
种循环块中:
for
foreach
while
until
或裸
块。同样地,如果有多层的嵌套循环块,
next
只会对最内层起作用。这一节的最后,
我们将看到如何突破这种限制。
redo
操作符
循环控制操作符的第三个成员是
redo
。它能将控制返回到当前循环块的顶端,不经过
任何条件测试,也不会进入下一次循环迭代。而那些用过
C
这类语言的人却会对这个
操作符感觉陌生,因为那些语言里没有这个概念。来看具体的例子: ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Go程序设计语言

Go程序设计语言

艾伦A. A.多诺万, 布莱恩W. 柯尼汉
Perl语言入门

Perl语言入门

Randal L. Schwartz, brian d foy, Tom Phoenix

Publisher Resources

ISBN: 9787576602036