假设我有 ‘abbc’ 字符串并且我想替换:
如果我尝试两个替换结果不是我想要的:
echo 'abbc' | sed 's/ab/bc/g;s/bc/ab/g' abab
那么我可以使用什么 sed 命令来替换如下?
echo abbc | sed SED_COMMAND bcab
编辑 :实际上文本可能有超过 2 种模式,我不知道我需要多少替换。由于有一个答案说这sed是一个流编辑器,并且它的替换是贪婪的,我认为我需要为此使用一些脚本语言。
sed
也许是这样的:
sed 's/ab/~~/g; s/bc/ab/g; s/~~/bc/g'
替换~为您知道不会出现在字符串中的字符。
~