我想解析像
这样的文字Lorem ipsum dolor \tag{sit} amet, \git{consetetur} sadipscing elitr, sed diam
nonumy eirmod tempor invidunt ut \tag{labore \git{et} dolore magna aliquyam
erat, sed} diam voluptua. At vero eos et accusam et justo duo dolores et ea
\tag{rebum.}
到
Lorem ipsum dolor sit amet, \git{consetetur} sadipscing elitr, sed diam
nonumy eirmod tempor invidunt ut labore \git{et} dolore magna aliquyam
erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea
rebum.
即删除所有\tag{...}
个环境。它们可以嵌套,并且可以跨越多行。
在学习here时,正则表达式工具不适合该任务。
是否有适合此类问题的语言或Unix工具?
答案 0 :(得分:2)
您可以使用perl完成此任务:
perl -0ne 's/\\tag{//g;$i=0;while(/./gs){$i-- if $& eq "{";$i++ if $& eq "}"; if ($i<1){print $&}else{$i=0}}'
所有学分应为bartus11