在 Python 中查找字符串中的第一次出现

本教程将讨论在 Python 中查找字符串中第一次出现的子字符串的方法。

在 Python 中使用 find() 函数查找第一次出现

我们可以使用 Python 中的 find() 函数来查找字符串中第一次出现的子字符串。find() 函数将子字符串作为输入参数,并返回子字符串在主字符串中的第一个起始索引。

如果主字符串中不存在子字符串,则此函数返回 -1

string = "This guy is a crazy guy."
print(string.find("guy"));

输出:

5

我们在 "This guy is a crazy guy" 字符串中找到了字符串 "guy" 的第一次出现。在本例中,find() 函数返回 5 作为起始索引。

请注意,此函数还将空格计为一个字符。

在 Python 中使用 index() 函数查找第一次出现

使用 index() 函数类似于前面讨论的 find() 函数,因为它将子字符串作为输入参数并返回子字符串在主字符串的起始索引内的第一次出现。

string = "This guy is a crazy guy."
print(string.index("guy"));

输出:

5

与 find() 函数一样,index() 函数也返回 5 作为字符串 "guy" 在 "This guy is a crazy guy" 字符串中第一次出现的起始索引。

在 Python 中使用 rfind() 和 rindex() 函数查找最后一次出现

前面讨论的两个函数从左到右定位主字符串中的子字符串。如果我们想从右到左定位子字符串,也称为子字符串的最后一次出现,我们可以使用 rfind() 和 rindex() 函数。

这些函数类似于前面示例中讨论的对应函数,不同之处在于它们是从右到左查看的。以下代码片段显示了这两个函数在 Python 中的使用。

rfind()

string = "This guy is a crazy guy."
print(string.rfind("guy"));

输出:

20

rindex():

string = "This guy is a crazy guy."
print(string.rindex("guy"));

输出:

20

我们使用 Python 中的 rfind() 和 rindex() 函数在字符串 "This guy is a crazy guy" 中找到了字符串 "guy" 最后一次出现的起始索引。