这就是我正在做的事(简化示例):

gsed -i -E 's/^(?!foo)(.*)$/bar\1/' file.txt

我正在尝试将bar放在不是以foo开头的每一行的前面。这是错误:
gsed: -e expression #1, char 22: Invalid preceding regular expression

怎么了?

最佳答案

据我所知,sed既没有先行也没有先行。切换到具有类似语法的更强大的语言,例如perl

关于regex - GNU sed中的前瞻性正则表达式有什么问题?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12176026/

10-09 07:00