如何在Python中删除字符串末尾的子字符串?
**在本文中,我们将学习如何在Python中删除字符串末尾的子字符串。 **
第一种方法是使用切片方法。在这种方法中,我们将检查字符串是否以给定的子字符串结尾,如果是,则我们将切片该字符串,删除子字符串。
在Python中,访问序列(如字符串、元组和列表)的一部分的能力被称为切片。此外,您还可以将它们用于添加、删除或编辑可变序列(如列表)的元素。切片还可以与外部对象一起使用,如Pandas系列、数据框架和NumPy数组。
更多Python相关文章,请阅读:Python 教程
示例
在下面给出的示例中,我们以字符串和子字符串作为输入,使用切片从字符串末尾删除该子字符串 −
def remove_substr(str,sub):
if str.endswith(sub):
return str[:-len(sub)]
return str
str1 = "欢迎来到教程点"
print("给定的字符串是 ")
print(str1)
substr = "点"
print("给定的子字符串是")
print(substr)
print("从字符串中删除子字符串")
print(remove_substr(str1,substr))
输出
以上示例的输出如下所示 −
给定的字符串是
欢迎来到教程点
给定的子字符串是
点
从字符串中删除子字符串
欢迎来到教程
使用正则表达式的sub()方法
第二种方法是使用正则表达式的 sub() 方法。这个方法需要3个参数:要替换的子字符串、您要用来替换的子字符串以及主字符串。因此,我们将发送结束作为第一个参数,将空字符串作为第二个参数,将主字符串作为第三个参数。
示例
在下面给出的示例中,我们以字符串和子字符串作为输入,使用 sub() 方法从结尾删除子字符串 −
import re
def remove_substr(str,sub):
if str.endswith(sub):
res = re.sub(sub, '', str)
return res
return str
str1 = "欢迎来到教程点"
print("给定的字符串是 ")
print(str1)
substr = "点"
print("给定的子字符串是")
print(substr)
print("从字符串中删除子字符串")
print(remove_substr(str1,substr))
输出
以上示例的输出如下所示 −
给定的字符串是
欢迎来到教程点
给定的子字符串是
点
从字符串中删除子字符串
欢迎来到教程
使用replace()方法
第三种方法是使用 replace() 方法。此方法需要2个参数:要替换的子字符串以及我们要用其替换的子字符串。因此,在这里,要发送的第一个参数是结束,下一个参数将是空格。
示例
在下面给出的示例中,我们以字符串和子字符串作为输入,使用replace方法从字符串末尾删除子字符串 −
def remove_substr(str,sub):
if str.endswith(sub):
res = str1.replace(sub, '')
return res
return str
str1 = "欢迎来到教程点"
print("给定的字符串是 ")
print(str1)
substr = "点"
print("给定的子字符串是")
print(substr)
print("从字符串中删除子字符串")
print(remove_substr(str1,substr))
输出
以上示例的输出如下所示 −
The given string is
Welcome to Tutorialspoint
The given substring is
point
Removing the substring from the string
Welcome to Tutorials