2012-01-05 58 views
0

我有一個包含鏈接和其他日期的大列表。我想過濾掉所有的數據,並只有鏈接的列表。當前列表的用reg表達式替換Notepad ++?

例子:

 
32,2012-01-04 06:44:44,http://link.com/link 
33,2012-01-04 06:44:45,http://link.com/link,{Text|textext|text},http://link.com/link|http://link.com/link|http://link.com/link 
+4

你要什麼的結果是什麼樣子? – BoltClock 2012-01-05 00:37:04

回答

0

記事本++提供發現使用正則表達式替換功能。您可以通過使用Ctrl + H來訪問此功能。

如果你實際上需要的正則表達式來做到這一點,你可以使用這樣的匹配網址:

\b(([\w-]+://?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/))) 

我發現here

此外,您可以在http://gskinner.com/RegExr/

+2

記事本++有一個嚴格限制的正則表達式引擎,只要給定的表達式不起作用。 – BoltClock 2012-01-05 00:47:08

+0

確實。如果文件不是太大,我只需使用http://gskinner.com/RegExr/網站進行所需的更改。 – MichaelHouse 2012-01-05 00:49:06

+0

該文件只有150行,但有時在1行上有〜3個鏈接。但我不知道如何使用gskinner或正則表達式以及所有這些函數。任何人都可以幫助我嗎? – user1131105 2012-01-05 00:56:08

0

測試出改變你的正則表達式輕鬆使用您所提供的輸入,這裏就是你可以在http://www.regexr.com/ 使用你需要確保全球(/ g)的標誌是一個模式在

表達:

.*?(http.*?)[,|\n] 

輸入:

32,2012-01-04 06:44:44,http://link.com/link1 
33,2012-01-04 06:44:45,http://link.com/link2,{Text|textext|text},http://link.com/link3|http://link.com/link4|http://link.com/link5 

換人:

$1\n 

輸出:

http://link.com/link1 
http://link.com/link2 
http://link.com/link3 
http://link.com/link4 
http://link.com/link5 
+0

'[,| \ n]'是一個匹配','或'|'或'\ n'的字符類。我想你的意思是'(,| \ n)'或'[,\ n]'。但'(,| \ R)'更好,'\ R'匹配'\ n'或'\ r'或'\ r \ n'。 – Toto 2014-05-13 11:21:39

+0

@ M42我的意思是一個文字'|'。一些鏈接使用'|'分隔。在'\ R'上打個電話 - 謝謝你解釋! – 2014-05-13 11:53:48