Python程序删除给定字符串的前缀子字符串


在本文中,我们将学习如何创建一个 Python 程序来删除给定字符串中的前缀子字符串。有时在数据中,我们会有多个相同类型单词的前缀,如果我们想删除它们,则需要花费大量时间,但这可以通过为其提供算法来解决。前缀是在开头添加的一组字符。

让我们举个例子来理解这一点。

给定的字符串变量为“My shirt color is Red”,并删除前缀变量,即“My”

然后,最终输出变为“shirt color is Red”

语法

startswith()

这是 Python 中使用的预定义方法,如果字符串以给定值开头,则返回 true,否则返回 false。

lstrip()

这是 Python 中使用的预定义方法,并从字符串开头删除给定的前缀字符。

removeprefix()

这是一个内置函数,如果字符串与字符的开头匹配,则返回 true。

示例 1

在这个程序中,我们正在初始化两个变量 - ‘str_name’ 和 ‘p_fix’,它们分别存储输入字符串和前缀子字符串的值。然后我们使用 if 语句并执行以下操作 -

  • if str_name.startswith( p_fix ) - 通过此表示法,它将检查前缀子字符串的值是否有效。如果有效,则返回 true,否则返回 false。

  • str_name = str_name[ len(p_fix): ] - 通过此表示法,给定的长度被切片并删除前缀子字符串。

最后,我们使用名为 ‘str_name’ 的变量打印结果。

str_name = "Red pen"
p_fix = "Red"
if str_name.startswith( p_fix ):
   str_name = str_name[ len(p_fix): ]
print( "After deleting the given prefix:", str_name )

输出

After deleting the given prefix:  pen

示例 2

在这个程序中,我们将初始化两个变量 - ‘str_name’‘prefix_name’,它们分别存储输入字符串和前缀子字符串的值。然后使用内置函数将其设置为名为 ‘prefix_name’ 的变量。这将删除子字符串的开头并定义术语前缀。最后,我们使用变量 ‘str_name’ 打印结果。

str_name = "The sky is blue in color"
prefix_name = "The"
str_name = str_name.lstrip( prefix_name )
print( "After deleting the given prefix:", str_name )

输出

After deleting the given prefix:  sky is blue in color

示例 3

在以下示例中,我们将通过将输入字符串存储在变量 s_prefix 中来启动程序。然后使用名为 removeprefix() 的内置方法,该方法接受子字符串以验证特定值并返回 true 以获取其余子字符串的结果。

s_prefix = 'qwertyuiop'
print(s_prefix.removeprefix('qwe'))

输出

rtyuiop

示例 4

在以下程序中,我们将使用带有 def 关键字的函数,名为 removeprefix(),它接受两个参数 - org_str(给定字符串)和 prefix(存储变量 rest_substring 的值)。然后使用 if-else 语句检查变量 prefix 的条件,该条件要么返回原始给定字符串的长度,要么返回给定字符串。接下来,设置两个变量的值 - org_str 和 rest_substring。在处理完所有这些步骤后,它将使用变量 - org_strrest_substring 打印结果。

def removeprefix(org_str, prefix):
   if org_str.startswith(prefix):
      return org_str[len(prefix):]
   else:
      return org_str
org_str = 'abcdefghijklmnopqrstuvwxyz'
rest_substring = removeprefix(org_str, 'abcdefghijkl')
print('The original string: ', org_str)
print('After removing the prefix: ', rest_substring)

输出

The original string:  abcdefghijklmnopqrstuvwxyz
After removing the prefix:  mnopqrstuvwxyz

结论

我们探讨了从给定字符串中删除前缀子字符串的概念。然后我们看到了这个程序的四个示例,并且通过采用长度运算和预定义方法,解决方法各不相同。这种类型的程序通常用于删除以相同前缀开头的多个单词。

更新于: 2023年6月1日

200 次查看

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告