多行搜索在Eclipse中替换为正则表达式

时间:2013-05-23 02:16:40

标签: regex eclipse search replace

Eclipse regexp搜索工作得很好,所以例如在搜索框中我有这个:

(?s)(myMethod.*?;)\}\);

现在我想在IDE和替换框中复制多行文本,例如我想粘贴\1PASTE_MULTILINE_TEXT_HERE。但是,Eclipse不允许我直接复制粘贴多行文本而无需手动插入换行符。

在Vim(Gvim,Macvim)中,它完美地运作,保留所有空间;我怎样才能在Eclipse中做同样的事情?

2 个答案:

答案 0 :(得分:20)

要在Eclipse中搜索多行,必须在搜索表达式中使用's'参数:

(?s)someExpressionToMatchInAnyLine

要替换多行exp,必须使用\ R ie:

line1\Rline2\Rline3

这将用以下内容替换匹配的exp:
一号线
2号线
line3中

答案 1 :(得分:2)

一般来说,我采用这种方法做的方法是键入我想要用作替换的内容,选择它,打开“查找/替换”对话框,然后复制“查找”的内容。文本框。我从那里继续并将我复制的内容粘贴到替换文本框中。还有一些工作要做(从替换盒中不适用的正则表达式特殊字符前面删除反斜杠),但它让我有所帮助。