我使用grep创建了一个测试,但它在sed中不起作用.
grep -P '(?<=foo)bar' file.txt
返回栏可以正常工作.
sed 's/(?<=foo)bar/test/g' file.txt
我期待作为输出的footest,但它没有用.
请注意,大多数情况下,您可以使用捕获组和替换字符串中的反向引用来避免lookbehind(或前瞻):
sed 's/\(foo\)bar/\1test/g' file.txt