我很难找到如何编写一个正则表达式来编辑我所拥有的文件。它是一个包含大约10,000个条目的文件,有些行只有一个单词,接下来的1到10行从这个单词开始,所以我尝试使用regex来查找每一行在行之后有一行或更多的行,并将它们移动到文件的末尾,或者导出到另一个文件中。
因此,条目的顺序可能是:
1
2
3a
3a eff
3a jll
4
5
5 eff
5 yii
我正在尝试将"3a-3a jll“移动到文件的末尾,然后让regex识别并将"5-5 yii”移到文件的末尾,等等。
因此,结果将是:
1
2
4
3a
3a eff
3a jll
5
5 eff
5 yii
发布于 2013-10-25 05:12:42
在regex操作中将它们移动到文件末尾可能一次不可能,但是如果Notepad++可以选择收集新文件中的所有regex匹配项,则可以执行以下操作:
搜索
^(\w+)\s*?[\r\n]+(?:\1.*[\r\n]+)+
并在一个新的文件中收集所有的匹配。
然后再次运行相同的搜索,但这次删除所有匹配项(用空字符串替换它们)。
然后将已编辑的文件和文件与收集的匹配连接起来。
如果您想确保“word”只匹配它们的全部内容(而不是将foo<newline>foobar<newline>
视为“块”),那么在\1
之后添加一个\b
。
https://stackoverflow.com/questions/19581200
复制相似问题