【发布时间】:2017-07-13 01:31:22
【问题描述】:
我使用这个命令,但它不是广告预期的工作:
echo "0+223+141+800+450+1*(106+400)+1*(1822+500)+1*(183+400)" | sed 's/\*\(.*\)+/*\1suma/g'
这是预期的输出:
0+223+141+800+450+1*(106suma400)+1*(1822suma500)+1*(183suma400)
但这就是我得到的:
0+223+141+800+450+1*(106+400)+1*(1822+500)+1*(183suma400)
尽管使用了g,但似乎只替换了最后一个匹配项。
【问题讨论】:
-
标题说“awk”,但问题和标签是关于sed的。此外,“不工作”没有帮助——到底发生了什么?你的输出是什么?
-
0+223+141+800+450+1*(106+400)+1*(1822+500)+1*(183suma400)
-
只改变最后一部分
标签: sed regex-greedy