vim中的非贪婪多行搜索

时间:2013-11-01 18:35:57

标签: regex vim multiline non-greedy

我正在尝试搜索ruby文件并找到所有方法(稍后自动替换它们之前)。 在vim中,我使用以下regexp:

/\vdef.*(\n.*){-}end

然而,即使我使用" { - }",它也会选择整个文件的内容。

3 个答案:

答案 0 :(得分:12)

使用\_.将换行符添加到公共.

/\vdef\_.{-}end

答案 1 :(得分:6)

在我的Vim版本中,你需要逃避{,以及使用\_.,正如其他答案所说:

/def\_.\{-}end

答案 2 :(得分:5)

试试以下正则表达式。

/\vdef(\n|.){-}end

.*是您案件中的罪魁祸首