2011-04-08 155 views
0

我发现Notepad ++正则表达式与Microsoft Word中的正则表达式非常不同。我想知道如何使用Notepad ++分组几行文本。我有一个包含100多个网址的文本文件。它们每行写入一个URL地址。我希望通过将每一行的回车从第一行到第九行进行分组,将其全部分组,但每十行保留一次回车并在此后再添加回车。例如:如何使用记事本对文本行进行分组++

我想这一点:

http://website1.com 
http://website2.com 
http://website3.com 
http://website4.com 
http://website5.com 
http://website6.com 
http://website7.com 
http://website8.com 
http://website9.com 
http://website10.com 
http://website11.com 
http://website12.com 
http://website13.com 
http://website14.com 
http://website15.com 
http://website16.com 
http://website17.com 
http://website18.com 
http://website19.com 
http://website20.com 
http://website21.com 
http://website22.com 
http://website23.com 
http://website24.com 
http://website25.com 
http://website26.com 
http://website27.com 
http://website28.com 
http://website29.com 
http://website30.com 

的样子:

http://website1.comhttp://website2.comhttp://website3.comhttp://website4.comhttp://website5.comhttp://website6.comhttp://website7.comhttp://website8.comhttp://website9.comhttp://website10.com 

http://website11.comhttp://website12.comhttp://website13.comhttp://website14.comhttp://website15.comhttp://website16.comhttp://website17.comhttp://website18.comhttp://website19.comhttp://website20.com 

http://website21.comhttp://website22.comhttp://website23.comhttp://website24.comhttp://website25.comhttp://website26.comhttp://website27.comhttp://website28.comhttp://website29.comhttp://website30.com 

任何帮助,将不胜感激!

+0

@Dante Jiang确定什么? – techdaemon 2011-04-08 08:58:11

+0

嗯,我认为这是不可能的,因为在Notepad ++中没有像{a,b}等的东西。例如,用Java编写工具更容易。 – StKiller 2011-04-08 09:14:31

+0

@StKiller感谢您的回复。我认为这是可能的,因为我读了很多关于Notepad ++在正则表达式方面的功能。 :(关于Java,恐怕我对它没有任何了解,如果没有太多问我的话,你能写出这个Java工具的代码吗? – techdaemon 2011-04-08 09:29:12

回答

4

好吧,我已经找到一种方法:

有一个这样的可能性,但只有一排(最长的正则表达式不被记事本+解析)6项。

1)所以,打开文件并从中删除所有换行符,所以文本将是一个长长的行。

2)打开替换对话框中,插入在 “查找内容” 领域的下:

(http://[^\:]*\.comhttp://[^\:]*\.comhttp://[^\:]*\.comhttp://[^\:]*\.comhttp://[^\:]*\.comhttp://[^\:]*\.com)

,并在 “替换为” 下一个:

\1\r\n 

将光标在文本中的第一个位置,然后按“替换全部”

因此,正则表达式包含此(http://[^\:]*\.com){6}(正则表达式重复6次)。如果你使用Unix并且需要unix类型的新线条样式,请将此替换为:\1\r\n与此\1\n

+0

谢谢!这真的有用。我只是要用你提供的正则表达式来查找和替换两次,一次有两个入口,另一个有五个,这样它总计十个,我的问题就解决了。再次感谢:) – techdaemon 2011-04-08 10:36:48

+0

I' m非常确定你应该用'\ r \ n'代替Windows结尾的'\ n \ r'。 – BoltClock 2011-04-08 10:44:47

+0

同意,更新。 – StKiller 2011-04-08 10:47:03

相关问题