2016-07-30 49 views
0

一年多来,我一直在尝试做最简单的事情 - 做一个HTLM/PHP搜索并替换成多个文件。PhpStorm在HTML替换新行

对于exapmle如果我想更换

<!DOCTYPE html> 

<!DOCTYPE html> 
<!-- 
TODO UNIVERSAL 
Favicon 
Page title 
Active page 
--> 

我得到

<!DOCTYPE html> <!--  TODO UNIVERSAL  Favicon  Page title  Active page --> 

我意识到搜索和替换大概被认为老土,但我发现它一个非常有用的工具30年。

我已经搜查JetBrains网站没有用,并在这里和其他地方搜索。

我试过/ n,\ n,\\ n,\\ n \\ r等等,没有任何东西可以工作。

我相信我是一个笨蛋,但可以使用其他一些PhpStorm用户,请赐教。

回答

1

搜索:

\<\!DOCTYPE HTML\> 

替换:

\<\!DOCTYPE html\>\n\<\!\-\-\nTODO UNIVERSAL\nFavicon\nPage title\nActive page\n\-\-\> 

确保正则表达式选项被选中

enter image description here

(这里的截图中,你看到这样的更换的结果)


附: PhpStorm(以及其他基于IDEA的IDE)在内部(编辑时)使用\n进行所有行结束。然后,保存时,它使用检测/适当的行结束。

+0

那么这就是我想要的东西,但笨重(但巨大的谢谢!)PhPS自动转义“替换路径”(RIP)中的_search_字符串,因此可以剪切和粘贴替换,但似乎是疯狂的工作流程。如果我尝试'\ n' _内嵌一个文件,它只是回应字符“\ n”,并且一切都在一行上。因此,AFAICS用一个文件代替大块代码我只能通过使用单个文件中的“替换路径”来执行此操作,并执行多文件操作。我猜想可行但很疯狂。这似乎非常不雅。祝JetBrains能够对此进行排序。无法理解这如何不是基本功能。 – BeNice

+0

好吧 - 我用普通/页面替换替换了它。很可能你没有逃过所有需要转义的角色(因为这个使用正则表达式,最终结果可能受到这些角色的影响)。 – LazyOne

+0

我的错误没有勾选正则表达式。但为了获得大量代码的逃逸版本(我将插入大约40行代码),我必须回到“在路径中寻找”来“编写代码”,这似乎很坦白。因为我没有什么经验,所以我不喜欢用40线手动重新绑定。我只是做一个网站的快速虚拟,复制和替换文本将是一个有用的工具。嗯,我现在有一个工作。谢谢 – BeNice

0

这可以通过简单的小应用geany来实现。

我不知道你在哪个平台上,但它在Ubuntu和Windows上都可用。

  1. 您可以打开所有您想要搜索和替换的文件。
  2. 打开替换对话框
  3. findreplace文本框中输入文本。
  4. 这里确保你从geany中打开的文件中复制并粘贴“替换”文本,并换行符。新行字符将被转换为一些不可读的字符,但不要担心,只需将其替换为替换后的新行即可。