我需要在带有正则表达式的named.conf中替换此语句
masters {
10.11.2.1;
10.11.2.2;
};
我使用sed / vi的所有方法都不起作用
%s/masters.*\}\;//g
不匹配。还尝试用/ s \ s等来匹配换行符。
答案 0 :(得分:1)
在vim中,您force a pattern to match across newlines可以使用\_
,例如:
%s/masters {\_[^}]*};//g
如果您使用.*
作为前缀,那么将[^}]*
替换为\_
更保守的内容非常重要,因为*
是贪婪的,所以\_.*
会尝试将所有内容匹配到文档的末尾。