更改找到的序列中的最后一个字符

更改找到的序列中的最后一个字符

我想将/side 中的每个第一个更改\ukindex!.

例如\ukindex{duality/weak|)}%变成\ukindex{duality!weak|)}%

我可以用 找到所有此类事件grep linear-programming.tex -e '\ukindex{[^/^}]\+/'

但是,我不知道如何编写对应的sed内容。这不起作用:

 sed -i 's/\ukindex{[^/^}]\+//\ukindex{[^/^}]\+!/g' 

答案1

所以,它的工作原理是这样的

sed -i 's/\(\ukindex{[^/^}]\+\)\//\1!/g'
  • ()在第一部分中定义可以在第二部分中重用的组(实际上是字符串)
  • \1第二部分是对第一部分中捕获的第一组的引用

相关内容