灵活使用replace 函数可实现多种字符串替换
Python replace方法把字符串中的old(旧字符串) 替换成new(新字符串),如果指定第三个参数max,则设置替换次数不超过 max 次。
str.replace(old, new[, max])
示例1
在该示例中,出现的两个单词Hello都被替换为Hi。
#原字符
string = “Hello world! Hello Python!”
替换字符,字符串直接调用replace方法
string2 = string.replace('Hello', 'Hi')
print(string2)
#输出
Hi world! Hi Python!
示例2
可以直接str.replace方法。它将我们进行替换的字符串作为第一个参数。结果和示例1一样。
string = "Hello world! Hello Python!"
string2 = str.replace(string, 'Hello', 'Hi')
print(string2)
#输出
Hi world! Hi Python!
示例3
我们可以用换行符替换每个逗号,并设置替换次数
data = “1,2,3,4,5”
替换次数为3次
data2 = data.replace(',', '\n', 3)
print(data2)
#输出
1
2
3
4,5
示例4
在该示例中,我们替换最后一次出现的单词Hello。需要结合Python rfind()方法。rfind()方法是指返回字符串最后一次出现的位置。
string = "Hello world! Hello Python!"
# Python rfind()返回字符串最后一次出现的位置
idx = string.rfind("Hello")
print(idx)
提取前一部分字符不替换,取后一部分字符进行替换
这里用到了字符串切片的方式
string2 = string[:idx] + str.replace( string[idx:] , "Hello", "Hi")
print(string2)
#输出
13
Hello world! Hi Python!
示例5
我们可以将replace方法链接起来进行多次替换。
string = "Hello world! Hello Python!"
string2 = string.replace('Hello', 'Hi').replace('!','.')
print(string2)
#输出
Hi world. Hi Python.