我有一堆代码,这些代码遍布各处:
plt.savefig( 'fig1.png' )
...
plt.savefig( 'figblah.png' )
我想将每一行改为:
plt.savefig( 'fig1.png', dpi=300 )
...
plt.savefig( 'figblah.png', dpi=300 )
我对正则表达式非常缺乏经验,并且尝试了一段时间但没有成功。我在这里浏览了很多问题,但还没有成功。到目前为止,我可以找到(?=savefig).*
的字符串,但我已经卡在那里了。我想这个问题是某种方式得到找到的值并附加',dpi = 300
字符串,但不知道如何做到这一点。
(我在jupyter-notebook工作,如果这有所不同)
答案 0 :(得分:1)
有多种方式,一种是正向背后隐藏:
(?<=plt\.savefig) # positive lookbehind for plt.savefig
\( # match an opening parenthesis
([^)]+) # capture anything not a )
\) # match a closing parenthesis
这需要替换为(\1, dpi=300)
,请参阅a demo on regex101.com。
答案 1 :(得分:1)
从您的有限示例中,将)
替换为, dpi=300)
就足够了。如果您需要捕获savefig
,则可以使用(savefig\([^)]+)\)
和替换$1, dpi=300)
之类的内容。
答案 2 :(得分:0)