【发布时间】:2018-02-14 03:59:11
【问题描述】:
我正在尝试使用 sed 替换一行中的文本,但前提是它不在特定模式内。
例如,该行可能是
bla blab blab \cite{bla} \cite[prout]{bla} \footcite[prout][hein]{ bla } Bla aBla
结果必须是(通过用不区分大小写的 KUI 替换 bla)
KUI blab blab \cite{bla} \cite[prout]{bla} \footcite[prout][hein]{ bla } KUI aBla
我不确定sed 是否是正确的命令。可以使用其他经典的 unix 命令。
【问题讨论】:
-
我怀疑你可以用 sed 做任何有趣的事情,因为语言可以嵌套大括号。 (除非您计划使用一个只能用一半时间的糟糕解决方案)。使用 perl 命令行的解决方案是可能的。
-
@CasimiretHippolyte 你知道语法吗?
-
你可以试试 Perl。 Like this.
-
@Guuk:该语言似乎使用了一种允许嵌套 tags 的 Latex 语法。
-
@CasimiretHippolyte 你是对的,但我的问题的目的是编写一个代码来自动为某些单词添加特定的乳胶命令,并避免在某些情况下应用它。在某些情况下,我想避免添加嵌套标签。