如何使用正则表达式替换文件中的字符串?

我需要替换文件中的一些字符串(从命令行),但我不想使用sed -i因为我的字符串包含许多需要正确转义的有趣字符。 有没有办法关闭正则表达式只是替换普通字符串?

使用perl可能会更好运气 – 它通过\Q (引用句子)修饰符支持文字字符串匹配,例如

 perl -pe 's/\Q string / replacement /g' 

例如,参见boost.org上的本文Perl正则表达式语法