在 Python 3.9 中删除前缀和后缀的新字符串方法

Python 3.9 中的新字符串方法

removeprefix() 与 lstrip()

删除前缀()

str.removeprefix(prefix)

  • 如果字符串以前缀字符串开头,则返回;否则,返回原始字符串的副本。string[len(prefix):]
  • 的参数removeprefix()被视为子字符串而不是字符集。

lstrip()

str.lstrip([chars])

  • 返回删除了前导字符的字符串的副本。chars参数是一个字符串,指定要删除的字符集。chars 参数不是前缀,而是其值的所有组合都被剥离-Python docs

删除后缀()与 rstrip()

删除后缀()

str.removesuffix(suffix)

  • 如果字符串以后缀字符串结尾并且该后缀不为空,则返回string[:-len(suffix)]。否则,返回原始字符串的副本:
  • removesuffix() 的参数被视为子字符串而不是字符集。

rstrip()

str.rstrip([chars])

返回删除了尾随字符的字符串副本。参数是一个字符串,chars 指定要删除的字符集。如果省略 or None,则chars参数默认删除空格。参数不是后缀;相反,它的值的所有组合都被剥离了。

Python 3.9 之前删除前缀和后缀的不同方法

  1. 使用 re.sub()
    删除后缀
导入re
模式= r"abc$"
 s1= "abcPYTHONacbcabc"
 s2=re.sub(pattern, "" ,s)1 
print (s2) 
#Output:abcPYTHONacbc

pattern=r”abc$” → 检查字符串是否以“abc”
$→ 结尾,表示字符串的结尾。

s2=re.sub(pattern,””,s1)→ 如果模式匹配,它将用空字符串替换子字符串。

删除前缀

导入re
模式= r"^abc"
 s1= "abcbcPYTHONabc"
 s2=re.sub(pattern, "" ,s1) 
print (s2) 
#Output:bcPYTHONabc

pattern=r”^abc” → 检查字符串是否以 “abc”

^→ 表示字符串的开头

  1. 使用 str.startswith()
s1 = "abcbcacPythonacbcabc" 
if (s1.startswith( "abc" )): 
    print (s1.replace( "abc" , "" ,1)) 
    
#输出:bcacPythonacbcabc

如果字符串以 开头,“abc”则表示它将用“”(空字符串)替换该子字符串
count = 1 表示仅提到的该子字符串的一次出现被空字符串替换。

  1. 使用 str.endswith()
s2 = "Pythonacbcabc" 
if (s2.endswith( "abc" )): 
    print (s2[:-3]) 

#Output:Pythonacbc
posted @ 2023-03-06 14:35  中亿丰数字科技  阅读(702)  评论(0)    收藏  举报