批量添加括号
- 从GitHub复制的Python2代码,print函数经常不带括号,手动添加非常麻烦,这时候正则表达式就派上了用场。
- 以下是我自己写的正则表达式加括号的示例代码
import re
s='''
#This is a note
for i in range(3):
print 'hello!'
a=1
print 'over!'
'''
print_content = re.findall('print \'(.*)\'\n',s) # 先找到所有print的内容,方便之后写正则表达式
for content in print_content: # 遍历每一个print的内容,逐一替换
ex = 'print \''+content+'\'' # 写出正则表达式
s = re.sub(ex,'print(\''+content+'\')',s) # 替换成带有括号的print
print(s)
输出结果:
#This is a note
for i in range(3):
print('hello!')
a=1
print('over!')
批量加引号
- 很多时候字符串需要加引号,手动逐一添加是非常麻烦的
- 以下是我自己写的正则表达式加引号的示例代码
import re
s = '''initiative_id: tbindexz_20170306
ie: utf8
spm: a21bo.jianhua.201856-taobao-item.2
sourceId: tb.index
search_type: item
ssid: s5-e'''
s= re.sub('^', '\'', s) #替换开头
s= re.sub('\n', '\'\n\'', s)
s= re.sub('$', '\'', s) # 替换结尾
s= re.sub(r': ', "\': \'", s)
print(s)
- 运行结果:
'initiative_id': 'tbindexz_20170306'
'ie': 'utf8'
'spm': 'a21bo.jianhua.201856-taobao-item.2'
'sourceId': 'tb.index'
'search_type': 'item'
'ssid': 's5-e'