Regex 在pycharm中搜索时匹配python语句/表达式边界
在IDE中执行搜索替换(在本例中为PyCharm)时,我想做的一件常见事情是避免将表达式或语句一分为二 例如,假设我想修复我的系统正在使用python-2样式的打印语句这一事实。我可以这样写: 搜索:Regex 在pycharm中搜索时匹配python语句/表达式边界,regex,pycharm,Regex,Pycharm,在IDE中执行搜索替换(在本例中为PyCharm)时,我想做的一件常见事情是避免将表达式或语句一分为二 例如,假设我想修复我的系统正在使用python-2样式的打印语句这一事实。我可以这样写: 搜索:print(+),替换:print($1) 但这对于多行语句来说是错误的: print 'one' \ 'two' 一般来说,识别多行语句是复杂的。您需要检查尾随\s,并对多种类型的括号进行括号匹配。是否有内置的功能来执行此操作?某种类型的语句结束/表达式结束转义序列?您可能可以这样做
print(+)
,替换:print($1)
但这对于多行语句来说是错误的:
print 'one' \
'two'
一般来说,识别多行语句是复杂的。您需要检查尾随\s,并对多种类型的括号进行括号匹配。是否有内置的功能来执行此操作?某种类型的语句结束/表达式结束转义序列?您可能可以这样做 查找
打印((?:.+?(?:\\\r?\n)?)+)
替换
打印($1)
扩大
print
( # (1 start)
(?:
.+?
(?: \\ \r? \n )? # Possible line-continuation
)+
) # (1 end)