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 次檢視

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.