我想替换所有包含 abc
的单词,但在 abc
之前不包含 KLM
。
例如,"dasdasKLMabc"
不应该更改,但是 "dasabc"
可以替换,我想将 abc
替换为rrr
.
最佳答案
sed 似乎不支持后视。但是你可以在 perl 中很容易地做到这一点:
sorin@sorin:~$ echo -e "llalaabc\nKLMabc" | perl -pe 's/(?<!KLM)abc/rrr/'
llalarrr
KLMabc
sorin@sorin:~$
关于linux - 使用 sed 有条件地匹配一个词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15408347/