如何替换路径中的多行文本?

时间:2014-01-22 10:44:44

标签: intellij-idea

单线它很简单。但是我找不到替换文本块的方法,不能用结构替换,也不能用路径替换。并且多次替换,不是一个选择。

感谢。

2 个答案:

答案 0 :(得分:19)

"替换路径"可以选择使用正则表达式。

要替换文本块,可以将块描述为正则表达式,使用\ n或\ r \ n作为换行符(取决于LF的行结尾\ n和CR的\ r \ n)。

如果您还不熟悉正则表达式,可以使用IntelliJ的一个方便的功能:

  1. 您必须在打开的编辑器窗口中拥有文本块 的IntelliJ。
  2. 在编辑器中选择您的文本块
  3. 打开"替换路径" (控制 + + - [R
  4. =>如果文本块是多行的,IntelliJ将自动检查正则表达式选项并在搜索对话框中放置所选文本的完全转义(包括换行符)版本。您现在要做的就是输入替换文本并开始搜索。

    BTW:"结构替换"允许替换文本/代码的多行块。但纯文本(没有任何变量)不被接受为有效的搜索模式。

答案 1 :(得分:15)

这似乎至少在最新版本的IntelliJ2016.1.3)中起作用

如果您选择多行,请点击CTRL+F,然后点击CTRL+R,您就可以替换多行。 IntelliJ

一个奇怪的隐藏功能

在⌘+ F的Mac上,然后点⌘+ R

enter image description here

编辑:作为替代方案,我一直在使用另一个功能,在单个文件中重复多行替换具有很好的实用性。

  • 只需选择您要替换的重复文本

  • 反复按control+G以突出显示所有区域。

  • 然后开始输入。您的输入将复制到所有选定区域。所有关键动作都是重复的,避免鼠标点击,因为它会取消。

  • 然后按esc停止。它本应取代所有出现