2017-02-01 80 views
0

我有一個XML代碼:如何根據Notepad ++中的前幾行替換所有行?

<Line1>Matched_text Other_text</Line1> 
<Line2>Text_to_replace</Line2> 

如何知道記事本++找到Matched_text和替換Text_to_replaceReplaced_text?有幾個類似的代碼塊,其中一個是Matched _text,另一個是Other_textText_to_replace。我想要全部替換一次。

我的想法是把

Matched_text*<Line2>*</Line2> 
在查找字段

,並

Matched_text*<Line2>Replaced_text</Line2>  

在替換字段。我知道在正則表達式中\1可能很有用,但我不知道從哪裏開始。


實際的代碼是:

<Name>Matched_text, Other_text</Name> 
<IsBillable>false</IsBillable> 
<Color>-Text_to_replace</Color> 

回答

2

你正在尋找的正則表達式是類似於下面的東西。

查找:(Matched_text[\w,\s<>\/]*<Color>-).*(</Color>)

替換:\1Replaced_text\2

拆毀了

`()` is how you tell regex that you want to keep things (for use in /1, /2, etc.), these are called capture groups in regex land. 

`Matched_text[\w,\s<>\/]*` means you want your anchor `Matched_text` and everything after it up till the next part of the expression. 

`<Color>-).*(</Color>)` Select everything between <Color>- and </Color> for replacement. 

如果您對錶達任何問題,我強烈建議尋找一個regex cheatsheet

Make your NPP Find/Replace look like this

+0

對不起,我忘了提及'Text_to_replace'在每個塊中是不同的。有沒有辦法一次全部更換? – Ooker

+0

更新了我的答案,但我只能如此準確,沒有您正在處理的實際示例。所以希望上面更新的行可以爲你工作。 –

+0

我已經更新了我的問題中的實際代碼。我也嘗試過使用示例代碼測試示例解決方案,但無法找到它。我使用最新版本的Notepad ++ – Ooker

相關問題