一、Python字符串基礎
Python中的字符串是不可變的,即一旦字符串被創建,就不能被修改。字符串可以被創建為單引號或雙引號,但兩種方式是完全等價的。Python字符串中的字符可以由索引或切片訪問。例如,”Hello World!”的第一個字符可以通過字符串[0]或字符串[-13]訪問。切片操作也可以使用[start:end]的方式訪問。
二、Python字符串替換函數
Python中有三種替換字符串的函數:replace()、translate()和re.sub()。這裡主要介紹前兩種函數。
1. replace()
replace()函數可以替換字符串中的一個子字符串。它的基本用法如下:
str.replace(old, new[, count])
其中,old是要被替換的子字符串,new是替換後的子字符串,count是可選參數,表示替換的次數。如果不指定count,則默認替換所有出現的子字符串。
例如:
str = "Hello World!"
new_str = str.replace("World", "Python")
print(new_str) # Hello Python!
2. translate()
translate()函數可以替換字符串中的多個字符。它的基本用法如下:
str.translate(table)
其中,table是一個翻譯表,用於指定字符的替換規則。可以使用maketrans()函數創建翻譯表。翻譯表是由原字符和替換字符組成的字典。例如,{‘a’: ‘b’}表示將字符’a’替換為字符’b’。
例如:
str = "Hello World!"
table = str.maketrans("o", "0")
new_str = str.translate(table)
print(new_str) # Hell0 W0rld!
這裡將字符串中的字符’o’替換為0。
三、Python字符串替換實例
下面是一些實際應用的例子:
1. 替換HTML標籤
如果要去掉HTML標籤中的內容,可以使用正則表達式和re.sub()函數。
例如:
import re
html = "<p>Hello <b>World</b>!</p>"
new_html = re.sub("<.*?>", "", html)
print(new_html) # Hello World!
這裡使用正則表達式”<.*?>”匹配HTML標籤,並將其替換為空字符串。
2. 替換字符串中的數字
如果字符串中包含數字,可以使用正則表達式和re.sub()函數將其替換為另一個字符串。
例如:
import re
str = "1234abc5678"
new_str = re.sub("\d+", "999", str)
print(new_str) # 999abc999
這裡使用正則表達式”\d+”匹配字符串中的數字,並將其替換為”999″。
3. 替換字符串中的變量
如果字符串中包含變量,可以使用字符串的format()函數將其替換為實際的值。
例如:
name = "Bob"
age = 30
str = "My name is {0}, and I am {1} years old.".format(name, age)
print(str) # My name is Bob, and I am 30 years old.
這裡將字符串中的”{0}”和”{1}”分別用name和age替換。
總結
字符串替換在Python編程中是非常常見的操作,本文介紹了Python中的三種替換字符串的函數:replace()、translate()和re.sub()。replace()函數可以替換單個字符串,translate()函數可以替換多個字符,re.sub()函數可以使用正則表達式替換字符串中的內容。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/308518.html