使用带换行符的字符串替换Rubymine中的字符串

时间:2013-07-05 20:03:51

标签: rubymine

我想使用Rubymine中的“搜索和替换”对话或类似的内容来替换“Scenario:”和“@Desktop \ nScenario”之类的内容

我正在尝试用

替换大型Cucumber测试套件中的Scenario:的每个实例
@desktop 
Scenario:

有什么最好的方法吗?

3 个答案:

答案 0 :(得分:11)

<强>更新

感谢@ryan2johnson9评论,我意识到现在这是一个更容易的选择(在2017年3月测试)。

点击&#34;新线&#34; (或使用快捷键Ctrl + Shift + Enter / Alt + Enter),输入变为多行。

New line Multiline


原始答案

在搜索和替换框中,如果勾选&#34;正则表达式&#34;你可以做的选择:

搜索:&#34;场景:&#34; 替换为:&#34; @desktop \ nScenario:&#34;

唯一的诀窍是勾选&#34; Regex&#34;选项:)

答案 1 :(得分:0)

Rubymine有宏(http://www.jetbrains.com/ruby/webhelp/binding-macros-with-keyboard-shortcuts.html),但我不认为它们对这个例子足够强大。

你可以通过隐藏在Rubymine中的一些精心设计的功能来解决它​​,但我认为使用来自终端的perl / sed这样的工具来做这件事要容易得多。如果您使用的是Windows,我假设您可以搜索网络并找到符合您需求的文本搜索/替换工具。

在OSX中我也有一堆文本替换应用程序。

我会选择那条路线,因为Rubymines宏工具不能完成任务。

答案 2 :(得分:0)

这是一个廉价而肮脏的选择:

  1. 从正在编辑的文件中的两个空行之间复制换行符。如果您没有,则暂时添加两个空行。
  2. 设置搜索/替换,然后在搜索文本输入框中输入要替换的字符串。
  3. 将刚刚复制的换行符粘贴到替换文本框以及您想要的任何其他文本。由于换行符,您将能够看到替换文本输入框的高度垂直增长一行。
  4. 执行搜索/替换。
  5. 为此,使用Rubymine 正则表达式是可选的。