Sed:将找到的字符串用作变量

Sed:将找到的字符串用作变量,sed,text-processing,Sed,Text Processing,我正在寻找替换表单所有实例的方法: model->variable 与 其中变量几乎可以是字母和数字的任意组合,可能定义为[0-9a-Z]{4,12}。 文本中有数百个这样的变量。我需要知道找到的字符串“variable”的确切形式,以便替换它。有没有办法“记住”字符串并在以后使用?或在这种情况下有帮助的任何其他方法/软件 提前谢谢 顺便说一下,如果你能将“variable”转换成大写,那就太棒了。如果你把它括在\(…\)中,你可以用模式中的东西来替换。然后使用\1插入第一个括号捕获的内

我正在寻找替换表单所有实例的方法:

model->variable

其中变量几乎可以是字母和数字的任意组合,可能定义为[0-9a-Z]{4,12}。 文本中有数百个这样的变量。我需要知道找到的字符串“variable”的确切形式,以便替换它。有没有办法“记住”字符串并在以后使用?或在这种情况下有帮助的任何其他方法/软件

提前谢谢


顺便说一下,如果你能将“variable”转换成大写,那就太棒了。

如果你把它括在
\(…\)
中,你可以用模式中的东西来替换。然后使用
\1
插入第一个括号捕获的内容

对于你的问题,一个天真的解决方案是:

sed 's/model->\(.*\)/models[\1][index]/' file.txt

如果将模式中的内容括在
\(…\)
中,则可以将其替换为。然后使用
\1
插入第一个括号捕获的内容

对于你的问题,一个天真的解决方案是:

sed 's/model->\(.*\)/models[\1][index]/' file.txt