2014-02-28 23 views
0

如何保留2個關鍵字之間的任何文本並遞歸刪除其他部分?記事本++:遞歸地保留2個關鍵字之間的任何東西?

注意:行首以關鍵字開頭。

例子:

some text 
Keyword1 
     More text 
Keyword2 
some text 
Keyword1 
     More text 
Keyword2 
some text 
(note : the sequence Keyword1/More text/Keyword2 is repeated more than 200 times) 
some text 
Keyword1 
     More text 
Keyword2 
some text 

結果:

Keyword1 
     More text 
Keyword2 
Keyword1 
     More text 
Keyword2 
(note : the sequence Keyword1/More text/Keyword2 is repeated more than 200 times) 
Keyword1 
     More text 
Keyword2 

我在這裏發現remove anything after this string END_PAGEREFS and remove anything before BEGIN_PAGEREFS,我需要添加關鍵字後, 「*」。但它不起作用。 (

注:我已經這樣做了:將「」與「關鍵字2 *」 和我檢查:「環繞」和「正則表達式」 我還與查找檢查「關鍵字。」 。+計數,如果我選擇了正確的關鍵字,它們似乎是正確的我

這裏是什麼,我嘗試過的一些照片: 前: Before

打「全部替換」後:

After

在此先感謝;) 編輯:我已更新我的示例,因爲實際上有超過200個關鍵字1 /更多文本/關鍵字2的序列。

回答

1

你想要做的是檢查'。匹配換行符「,然後輸入以下內容:

Find what: Keyword2.*?Keyword1 

Replace with:Keyword2\nKeyword1 

這樣,您將兩個關鍵字之間的所有內容全部替換爲空。 這只是讓你找到了第一個Keyword1以及最後一個Keyword2之後的所有東西。

+0

如果在第一個關鍵字1之前和最後一個關鍵字之前有任何不需要的文本,那麼它將不會被刪除 – Amit

+0

@Amit這是正確的,我已經在我的答案中承認了這一點。這取決於文本的主體。如果關鍵字亂七八糟,那麼除了第一個和最後一個之外,這個處理大部分都是關注的。這些應該可以手工操作。 IT是90-10的工作規則。您可以花10%的時間來解決90%的問題,並花90%的時間來修復剩餘的10%,或者您可以完成90%,然後手工完成剩下的10%,這將更快。我們在這裏討論的是Notepad ++,而不是一些需要在沒有監督的情況下運行的自動化過程。 – SQB

+0

Ahh對不起,我沒有完全閱讀答案。 – Amit