我有一個包含鏈接和其他日期的大列表。我想過濾掉所有的數據,並只有鏈接的列表。當前列表的用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
我有一個包含鏈接和其他日期的大列表。我想過濾掉所有的數據,並只有鏈接的列表。當前列表的用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
記事本++提供發現使用正則表達式替換功能。您可以通過使用Ctrl + H來訪問此功能。
如果你實際上需要的正則表達式來做到這一點,你可以使用這樣的匹配網址:
\b(([\w-]+://?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/)))
我發現here。
此外,您可以在http://gskinner.com/RegExr/
記事本++有一個嚴格限制的正則表達式引擎,只要給定的表達式不起作用。 – BoltClock 2012-01-05 00:47:08
確實。如果文件不是太大,我只需使用http://gskinner.com/RegExr/網站進行所需的更改。 – MichaelHouse 2012-01-05 00:49:06
該文件只有150行,但有時在1行上有〜3個鏈接。但我不知道如何使用gskinner或正則表達式以及所有這些函數。任何人都可以幫助我嗎? – user1131105 2012-01-05 00:56:08
測試出改變你的正則表達式輕鬆使用您所提供的輸入,這裏就是你可以在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
'[,| \ n]'是一個匹配','或'|'或'\ n'的字符類。我想你的意思是'(,| \ n)'或'[,\ n]'。但'(,| \ R)'更好,'\ R'匹配'\ n'或'\ r'或'\ r \ n'。 – Toto 2014-05-13 11:21:39
@ M42我的意思是一個文字'|'。一些鏈接使用'|'分隔。在'\ R'上打個電話 - 謝謝你解釋! – 2014-05-13 11:53:48
你要什麼的結果是什麼樣子? – BoltClock 2012-01-05 00:37:04