您的位置:首页 > 编程语言 > Python开发

Python中的字符串替换操作示例

2016-06-27 00:00 931 查看
字符串的替换(interpolation), 可以使用string.Template, 也可以使用标准字符串的拼接.

string.Template标示替换的字符, 使用"$"符号, 或 在字符串内, 使用"${}"; 调用时使用string.substitute(dict)函数.

标准字符串拼接, 使用"%()s"的符号, 调用时, 使用string%dict方法.

两者都可以进行字符的替换.

代码:

# -*- coding: utf-8 -*-

import string

values = {'var' : 'foo'}

tem = string.Template('''''
Variable : $var
Escape : $$
Variable in text : ${var}iable
''')

print 'TEMPLATE:', tem.substitute(values)

str = '''''
Variable : %(var)s
Escape : %%
Variable in text : %(var)siable
'''

print 'INTERPOLATION:', str%values


输出:

TEMPLATE:
Variable : foo
Escape : $
Variable in text : fooiable

INTERPOLATION:
Variable : foo
Escape : %
Variable in text : fooiable


连续替换(replace)的正则表达式(re)

字符串连续替换, 可以连续使用replace, 也可以使用正则表达式.

正则表达式, 通过字典的样式, key为待替换, value为替换成, 进行一次替换即可.

代码

# -*- coding: utf-8 -*-

import re

my_str = "(condition1) and --condition2--"
print my_str.replace("condition1", "").replace("condition2", "text")

rep = {"condition1": "", "condition2": "text"}
rep = dict((re.escape(k), v) for k, v in rep.iteritems())
pattern = re.compile("|".join(rep.keys()))
my_str = pattern.sub(lambda m: rep[re.escape(m.group(0))], my_str)

print my_str


输出:

() and --text--
() and --text--


您可能感兴趣的文章:

Python字符串拼接、截取及替换方法总结分析
Python字符串替换实例分析
python字符串替换的2种方法
python字符串替换示例
Python 字符串操作实现代码(截取/替换/查找/分割)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Python 字符串 替换