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版)
256
14
字符串与排序
Perl
擅长处理的问题中,约有
90%
与文本处理有关,其余
10%
则覆盖了其他领
域。所以毋庸置疑,
Perl
的文本处理能力很强,之前我们用正则表达式解决的那些问
题就是明证。不过,有时正则表达式引擎对你而言可能太过复杂,多数时候只需要简
单的字符串处理就能完成常见任务。本章我们就来围绕这个主题谈一谈。
index
查找子字符串
查找给定的子字符串是否出现在某个字符串中,其实就是要找出它在字符串中的位
置。如果在某个比较长的字符串中,可以借助
index
函数解决这个问题。比如:
my $where = index($big, $small);
Perl
会在长字符串中寻找短字符串首次出现的地方,并返回一个整数表示第一个字符
的匹配位置,返回的字符位置是从
0
算起的。如果子字符串是在字符串最开始的位置
找到的,那么
index
会返回
0
;如果在第二个字符,则返回
1
;如果
index
无法找到
子字符串,就会返回
1
。下面的代码中,
$where
会得到
6
,因为这是
wor
开始的位
置:
my $stuff = "Howdy world!";
my $where = index($stuff, "wor");
另一种理解位置的方法,就是把它当成走到子字符串之前要跳过的字符数。因
$where
6
,所以我们知道,必须跳过
$stuff
的前
6
个字符,才会走到
wor
index
函数每次都会返回首次出现子字符串的位置。不过,你可以再加上可选的第三
字符串与排序 ...
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