时间:2018-01-15 10:59:58

标签: regex shell sed regex-lookarounds

我想在此行中搜索并用“module”替换指定的字符串

离。行中的“苹果”字符串:

  

“happy applegg module banana tree”=> “快乐的berrygg模块香蕉   树“

sed 's/^((?=module).)*.*apple.*$/berry/g' filename >> newfile

^((?=module).)*$ =>背后的正面外观可以适合模块,.*apple.*$可以适合苹果

但它失败了,如何用正则表达式修改sed命令来做我想做的事?

1 个答案:

答案 0 :(得分:0)

Sed不支持完整的正则表达式。它甚至不支持简单(...)分组 - 你需要反斜杠转义。您可以使用Perl的“-p”选项进行类似sed的传递和s /.../.../语法以及perl的完整正则表达式支持。