Python 如何反向搜索字符串

Python 如何反向搜索字符串

在本文中,我们将学习如何在Python中反向搜索字符串。

第一种方法是使用内置的Python String类的 rindex() 方法。Python字符串 rindex() 方法返回给定字符串中任何子字符串的最高索引。

通过最高索引,我们的意思是,如果给定的子字符串在字符串中出现两次或三次, rindex() 方法将返回子字符串最右边或最后一次出现的索引。

此函数的主要缺点是,如果字符串中不包含子字符串,则会抛出异常。

示例1

在下面给出的示例中,我们输入一个字符串,并使用 ** rindex()** 方法查找某些特定字符的最后一个索引。

str1 = "Welcome to Tutorialspoint"
char = "Tutorial"

print("The given string is:")
print(str1)

print("Finding the last index of",char)
print(str1.rindex(char))

输出

上面示例的输出如下所示 −

The given string is:
Welcome to Tutorialspoint
Finding the last index of Tutorial
11

示例2

在下面给出的示例中,我们使用与上面相同的程序,但我们尝试不同的字符串作为输入 –

str1 = "Welcome to Tutorialspoint"
char = "Hello"

print("The given string is:")
print(str1)

print("Finding the last index of",char)
print(str1.rindex(char))

输出

上述示例的输出如下所示−

The given string is:
Welcome to Tutorialspoint
Finding the last index of Hello
Traceback (most recent call last):
File "C:\Users\Tarun\OneDrive\Desktop\practice.py", line 6, in 
print(str1.rindex(char))
ValueError: substring not found

使用rfind()方法

有一个方法叫做rfind()可以用来克服rindex()的缺点。它的功能类似于rindex()方法,但是如果字符串中找不到给定的子字符串,该方法不会抛出异常,而是返回’-1’,表示未找到给定的子字符串。

示例1

在下面的示例中,我们输入一个字符串,并使用rfind()方法找出特定字符的最后一个索引位置。

str1 = "Welcome to Tutorialspoint"
char = "Tutorial"

print("The given string is:")
print(str1)

print("Finding the last index of",char)
print(str1.rfind(char))

输出

上面示例的输出如下所示−

The given string is:
Welcome to Tutorialspoint
Finding the last index of Tutorial
11

示例2

在下面给出的示例中,我们使用与上面相同的程序,但尝试不同的字符串作为输入。

str1 = "Welcome to Tutorialspoint"
char = "Hello"

print("The given string is:")
print(str1)

print("Finding the last index of",char)
print(str1.rfind(char))

输出

上述示例的输出如下所示:

The given string is:
Welcome to Tutorialspoint
Finding the last index of Hello
-1

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程