第11课:匹配组

正则表达式不仅允许我们匹配文本,还允许我们提取信息以供进一步处理。这是通过定义字符组并使用特殊的圆括号()元字符捕获它们来实现的。任何一对圆括号内的子模式都将被捕获为一个组。在实践中,这可以用来从各种数据中提取诸如电话号码或电子邮件等信息。

例如,假设您有一个命令行工具来列出您在云中拥有的所有图像文件。然后,您可以使用诸如^(IMG\d+\.png)$之类的模式来捕获和提取完整的文件名,但如果您只想捕获没有扩展名的文件名,则可以使用模式^(IMG\d+)\.png$,它只捕获句点之前的部分。

继续尝试使用它编写一个正则表达式,该表达式仅匹配下面PDF文件的名称(不包括扩展名)。

练习11:匹配组
任务 文本 捕获组  
捕获 file_record_transcript.pdf file_record_transcript To be completed
捕获 file_07241999.pdf file_07241999 To be completed
跳过 testfile_fake.pdf.tmp To be completed
解决方案

我们只想捕获以“file”开头且文件扩展名为“.pdf”的行,因此我们可以编写一个简单的模式来捕获从“file”开头到扩展名的一切,如下所示 ^(file.+)\.pdf$

解决上述任务以继续下一个问题,或阅读解决方案