將 xml 中的特定行號批次替換為 Windows 7 中第二個 xml 檔案中的特定文字(行)

將 xml 中的特定行號批次替換為 Windows 7 中第二個 xml 檔案中的特定文字(行)

首先,我不是編碼器或 Unix 人員,我在 Win7 上使用 notepad++ v6.18,所以我請你幫我「簡化一下」:)

我注意到在notepad++文件中每行的左側都有“gray”中的數字,表示相應的行號,所以我認為“查找和替換”功能將是直接的(即替換第17行)在文件1和文件2 中的第2 行)那不是很好嗎!好吧,我錯了,我似乎找不到一種方法來實現我想要做的事情...

我有 2 個 txt(或 xml 檔案)f1 和 f2,我想做的是用 f2 中的給定行替換 f1 中的某些行...

這是一個例子......

文件1(有幾百行)

(item)(title)ABC(/title)(link)a_bunch_of_code(/link)(/item)

(item)(title)XYZ(/title)(link)a_different_code(/link)(/item)

etc...

文件2(每一行都有不同的程式碼)

hkskskdnnkk

absvdhvskkcncl

ETC...

我想做的是...用文件2的第2行替換文件1中的第1行,然後用文件2中的第1行替換文件1中的第2行等等...所以理想情況下我正在考慮一些命令或腳本這就是說...在文件1 中查找第1 行,並將其替換為文件2 中的第2 行,然後在文件1 中查找第2 行,並將其替換為文件2 中的第1 行,以此類推...

也許這必須在 Notepad++ 之外使用第 3 方工具或其他工具來完成...請提前告知並感謝您! ——保羅

答案1

根據更換的範圍,您有兩種方法:

  1. 安裝Notepad++插件管理器和Compare插件,非常適合比較兩個檔案的內容。如果您只想將某些文本(一個或多個單字)替換為其他文本,您可以使用 Notepad++ 中的搜尋和替換手動執行此操作。如果此類文字數量較少或要替換的文字很短,那麼這是合適的解決方案。

  2. 如果此類替換的數量很多,並且如果您需要經常進行此類替換,那麼您需要諸如 Unix diff 和 patch 之類的東西,並且 Windows 上有很多免費的此類工具。用法很簡單 - diff 工具的輸出是一個補丁文件,您可以將其應用(使用補丁工具)到第二個文件以使兩個文件相同。更簡單的是複製文件,但如果您不希望整個文件相同,而只希望某些行相同,請編輯補丁文件(它是純文字文件)並刪除不需要的內容。

相關內容