假设我有一些像
author = {Bill Catsman},
title = {{Hello} {{Cruel} {World}}}
我想从title
. 我可以sed -r 's/title\ \=\ \{//2g'
去掉多余{
的 s,但是我怎样才能去掉多余}
的 s?
期望的输出是
author = {Bill Catsman},
title = {Hello Cruel World}
假设我有一些像
author = {Bill Catsman},
title = {{Hello} {{Cruel} {World}}}
我想从title
. 我可以sed -r 's/title\ \=\ \{//2g'
去掉多余{
的 s,但是我怎样才能去掉多余}
的 s?
期望的输出是
author = {Bill Catsman},
title = {Hello Cruel World}
要删除所有出现的
{
or}
只要它们在another中{...}
:这具有仅保留外花括号的效果。
这个怎么运作:
:a
这定义了一个标签
a
。s/(\{.*)[{}](.*\})/\1\2/
这将查找另一组花括号内的任何花括号并将其删除。
ta
如果最后一个替代命令对该行进行了更改,则跳转到标签并重
a
试。