多行正则表达式搜索和替换!

Sco*_*ott 27 regex text-editor

我撞墙了.有没有人知道一个好的文本编辑器,它有像Notepad ++一样的搜索和替换,但也可以进行多行正则表达式搜索和替换?基本上,我试图找到一些可以匹配正则表达式的东西:

搜索oldlog\(.*\n\s+([\r\n.]*)\);
替换newlog\(\1\)

有任何想法吗?

小智 10

Notepad ++现在可以处理多行正则表达式(只更新到最新版本 - 功能是在12月左右推出的).

我需要从HTML文档中删除所有onmouseout和onmouseover语句,我需要创建一个非贪婪的多行匹配.

onmouseover=.?\s*".*?"

请务必检查:

[ ] . matches newline
如果要使用多行匹配功能,请选中此复选框.


Ben*_*ank 8

EditPad Pro具有比我曾经使用的任何其他编辑器更好的正则表达式功能.

此外,我怀疑你的正则表达式中有错误 - [\r\n.]只匹配回车,换行符和句号.如果您尝试匹配任何字符(即"点运算符加CR和LF),请尝试[\s\S]相反.


DVK*_*DVK 5

我个人的建议是IDM Computing的UltraEdit(www.ultraedit.com) - 它可以使用Perl,Unix和UltraEdit语法进行正则表达式(搜索和替换).多行匹配是Perl正则表达式模式中的功能之一.

它还具有其他不错的搜索功能(例如,搜索特定字符列范围,搜索多个文件,搜索历史记录,搜索收藏夹等...)

替代文字http://www.ultraedit.com/assets/images/new_features/ue_1500/searchincolumn.png

  • 花费50美元的编辑器几乎不能替代Notepad ++.是的,它有很多东西,如FTP客户端或CSS验证,但如果我不需要它有什么好处呢? (7认同)
  • @Malcolm - 就个人而言,这对我来说是值得的.对于很多人看到制作它的人仍在经营中的价值而言值得...而且,OP从未要求"免费更换".他询问哪个编辑器可以替换哪个具有某个功能. (4认同)

jus*_*sij 5

宙斯编辑器可以做多行查找和替换.


Vla*_*dtn 5

我使用Eclipse,它是免费的,如果你是开发人员,你可能已经拥有它.'\ R'充当平台无关的行分隔符.以下是多行搜索的示例:

搜索:

\ bibitem.(\ R.)?\ R?{([^ {] )} $\R ^([^ \]. [^}] $\R.$\R..)

并替换:

\ defcitealias {$ 2} {$ 3}


小智 5

我很确定Notepad ++现在可以通过TextFX插件(默认包含)来实现.在Notepad ++中击中Control-R并进行游戏.

  • 我无法弄清楚多线搜索. (8认同)