在 Python 中,字符串的 replace()
方法用于将字符串中的指定子字符串替换为新的内容,语法如下:
new_string = str.replace(old, new, count)
参数说明:
old
: 需要被替换的旧子字符串(区分大小写)new
: 替换后的新子字符串count
(可选): 最多替换的次数,默认替换所有匹配项
特点:
- 返回新字符串:字符串是不可变对象,
replace()
会生成一个新字符串,原字符串保持不变。 - 区分大小写:仅替换完全匹配的文本。
- 链式调用:支持连续多次替换。
示例代码:
基础用法
s = "Hello, World!"
result = s.replace("World", "Python")
print(result) # 输出: Hello, Python!
指定替换次数(count
参数)
s = "apple banana apple cherry apple"
result = s.replace("apple", "orange", 2)
print(result) # 输出: orange banana orange cherry apple
未找到匹配时
s = "Hello, World!"
result = s.replace("abc", "Python") # 无匹配,原样返回
print(result) # 输出: Hello, World!
链式调用
s = "I like Java and JavaScript"
result = s.replace("Java", "Python").replace("like", "love")
print(result) # 输出: I love Python and PythonScript
注意事项:
- 若需不区分大小写的替换,需先处理大小写(例如用正则表达式
re.sub()
)。 - 如需复杂模式匹配,需使用
re
模块的sub()
方法。
例如,正则替换示例:
import re
s = "Python is fun, python is easy."
result = re.sub(r'python', 'Java', s, flags=re.IGNORECASE)
print(result) # 输出: Java is fun, Java is easy.