我有一个tex文件,其中包含
形式的text和latex命令This is an acronym \acsu{RNS} and another acronym \acf{FHE}.
命令是\acsu{RNS}
和\acf{FHE}
。我想在括号内提取文本,输出应该是
This is an acronym RNS and another acronym FHE.
所有命令都以\ ac *开头,后跟一个或两个以上的字符,如\ acsu,\ acs,\ acf等。
我尝试了以下sed命令
sed -i.bkup 's/ [\][a-z]*{\([^]]*\)}/ \1/g' part.txt
但这取代了最后一次出现的\ acsu {和last}的第一次出现,因此输出为
This is an acronym RNS} and another acronym \acf{FHE.
请注意,tex文件中有许多命令涉及{}括号,但我想只替换那些以\ ac开头的命令。知道如何解决这个问题吗?
答案 0 :(得分:0)
似乎
sed -i.bkup 's/\\ac[a-z]*{\([^][}]*\)}/\1/g' file.txt
诀窍。