第十六课:其他特殊字符

本课将介绍一些额外的元字符,以及捕获的组的结果。

我们已经学习了使用\d捕获数字的最常见元字符,使用\s捕获空格以及使用\w捕获字母数字字母和数字的最常见元字符,但是正则表达式还提供了一种通过使用它们的大写来指定每个元字符的相反集合的方法大小写字母。例如,\D表示任何非数字字符,\S表示任何 非空白字符,\W表示任何非字母数字字符(例如标点符号)。根据您编写正则表达式的方式,使用其中一种可能更容易。

此外,还有一个特殊的元字符\b匹配单词和非单词字符之间的边界。它在捕获整个单词时最有用(例如通过使用模式\w+\b)。

我们不会在这些课程中详细探讨的一个概念是反向引用,主要是因为它因实现而异。但是,许多系统允许您通过使用\0(通常是完整匹配的文本)、\1(第 1 组)、\2 (第 2 组)等来引用捕获的组 。例如,当您在文本中时,这很有用编辑器并使用正则表达式进行搜索和替换以交换两个数字,您可以搜索 "(\d+)-(\d+)" 并将其替换为 "\2-\1" 以将第二个捕获的数字放在首位,并且例如,第一个捕获的数字第二个。

下面是一些不同的字符串,尝试不同类型的元字符或我们在之前的课程中学到的任何东西,并在你准备好后继续。

练习十六:其他特殊字符

任务 文本
解决上面的问题,以继续下一个题目,或者查看 解决方案