Python常用字符串替换函数strip、replace及sub用法示例
在Python中,字符串替换是比较基础的操作。本文将介绍三个常用的字符串替换函数:strip、replace以及sub,并给出相应的用法示例。
strip
strip函数可以去掉字符串前后的空格(包括换行符)、制表符、回车符等等。
# 去除空格、回车、换行符
string = ' hello world\n'
new_str = string.strip()
print(new_str) # 输出:'hello world'
replace
replace函数可以用新的字符串替换掉原字符串中的某些子串。其中,第一个参数是被替换的子串,第二个参数是新的子串。
# 替换空格为‘-’
string = 'hello world'
new_str = string.replace(' ', '-')
print(new_str) # 输出:'hello-world'
注意,上例中虽然仅替换了一个空格,但如果原字符串中有多个空格,也会被都替换掉。
sub
sub函数是在正则表达式模式下进行字符串替换的,使用时需要先 import re 模块。
import re
# 替换网址中的“http”为“https”
url = 'http://www.example.com'
new_url = re.sub(r'http', 'https', url)
print(new_url) # 输出:'https://www.example.com'
在sub函数中,第一个参数是正则表达式,第二个参数是用来替换的字符串,第三个参数是原字符串。
值得注意的是,正则表达式中通常用“\”来转义一些特殊字符,但在Python字符串中,“\”也是一个转义字符,因此在使用正则表达式时需要用“\”来代替“\”。
再看一个例子:
import re
# 替换国际象棋棋子中文名为英文名
chess = '车马象士将象马车'
new_chess = re.sub(r'[车|马|象|士|将]', lambda x: 'R' if x.group() == '车' else 'N' if x.group() == '马' else 'B' if x.group() == '象' else 'P' if x.group() == '士' else 'Q', chess)
print(new_chess) # 输出:'RNBQKBNR'
在这个例子中,我们使用了lambda表达式来实现替换规则,lambda表达式的作用对象是“'[车|马|象|士|将]'”中的每一个字符。如果匹配到的字符是“车”,则返回“R”;如果是“马”,则返回“N”;以此类推。
至此,我们就介绍了三个常用的字符串替换函数,包括了基本的用法以及具体的示例。在使用中,我们需要根据具体的需求和数据类型来选择合适的函数,以便最大限度地发挥Python的效能。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python常用字符串替换函数strip、replace及sub用法示例 - Python技术站