删除大括号之间多余的空行
Remove extra empty lines between curly brackets
在这种情况下,我想要一个从命令行运行的 perl 表达式,以删除大括号之间的额外行:
// some code
}
<-- empty line to remove
}
// more code
您可以使用正则表达式将 (?<=})\s*\n(?:\s*\n)+(\s*})
替换为 \n
。不幸的是我不懂perl,所以我不介意有人窃取这个模式来写一个完整的答案。
如果您只希望它在第二个大括号位于行首时执行此操作:
perl -0777 -pi -we's/}\n\n}/}\n}/g' filename
如果即使缩进:
perl -0777 -pi -we's/}\n(\n[^\S\n]*(?=}))/}/g' filename
如果 "empty" 行或第一个大括号之后可能有额外的空格:
perl -0777 -pi -we's/(}[^\S\n]*\n)[^\S\n]*\n([^\S\n]*(?=}))//g' filename
在这种情况下,我想要一个从命令行运行的 perl 表达式,以删除大括号之间的额外行:
// some code
}
<-- empty line to remove
}
// more code
您可以使用正则表达式将 (?<=})\s*\n(?:\s*\n)+(\s*})
替换为 \n
。不幸的是我不懂perl,所以我不介意有人窃取这个模式来写一个完整的答案。
如果您只希望它在第二个大括号位于行首时执行此操作:
perl -0777 -pi -we's/}\n\n}/}\n}/g' filename
如果即使缩进:
perl -0777 -pi -we's/}\n(\n[^\S\n]*(?=}))/}/g' filename
如果 "empty" 行或第一个大括号之后可能有额外的空格:
perl -0777 -pi -we's/(}[^\S\n]*\n)[^\S\n]*\n([^\S\n]*(?=}))//g' filename