从另一个.txt文件替换.txt文件中的文本

本文关键字:txt 文件 文本 替换 另一个 | 更新日期: 2023-09-27 18:00:04

我想自动化我现在手动完成的流程。我目前比较了两个.txt文档(我们称它们为"D1"answers"D2"),并创建了第三个(称之为"D3"),它是其他两个文档的组合。我需要做的是在"D1"中找到某个字符串,并在"D2"中找到类似/相同的字符串。一旦匹配,我需要用下面匹配"D2"的字符串替换"D1"中的字符串,并将其作为主文件放在"D3"中。这听起来有点令人困惑,所以下面是我希望它看起来的样子:

"D1"的.txt文件格式如下:

    1       0010  12345              DEF, DEF-0320            
    1       0020  ABC-00010G         ABC-A,1xx,10%,x1x,0603   
    1       0020A ABC-00010G         ABC-A,1xx,10%,x1x,0603   
    1       0030A ABC-00127G         ABC,4.7xx,10%,x1x,0805  

"D2"的.txt文件格式如下:

    10 BARE PCB
    20 T C40, C3112
    B C5, C45, C48
    30 B C25

我想比较"D1"answers"D2",找到"D1"中的值"0010"、"0020"、"002 0A"、"0030A"以及"D2"中的"10"、"20"、"30"。如果(当)两组数字(即"0010"answers"10")匹配,我想格式化一个新文档"D3",如下所示:

    1       AAAA BCD  142717             DEF, DEF-0320                 T
    1       C40       ABC-00010G         ABC-A,1xx,10%,x1x,0603        T
    1       C3112     ABC-00010G         ABC-A,1xx,10%,x1x,0603        T
    1       C5        ABC-00010G         ABC-A,1xx,20%,x1x,0603        B
    1       C45       ABC-00010G         ABC-A,1xx,20%,x1x,0603        B
    1       C48       ABC-00010G         ABC-A,1xx,20%,x1x,0603        B
    1       C25       ABC-00127G         ABC,4.7xx,100%,x1x,0805       B

根据"D1"中第二个数字后面是否有"A"来分配"T/B"如果只有一个数字,则为T赋值,如果有一个"a",则为B赋值。此外,由于分隔不同值的",","D3".txt文档中有更多行(即,对于"20",有"C40"answers"C3112")。对于"D2"中的每一个",","D3"中都需要有一个新行,其格式与上面的行相同。

从另一个.txt文件替换.txt文件中的文本

Colton写入

所以我的问题是,阅读"D1"answers"D2",比较两者的相似字符串,然后替换"D1"中的文本,最好的方法是什么

以下是方式(没有最佳的方式,至少不是每个人都同意的方式):

  1. 逐行读取两个文件[?]
  2. 在空白处拆分每一行[?]
  3. 对于这两个文件,创建一个二维数组[?]
  4. 将二维数组中相应的列相互比较,并检查其中一列是否包含另一列[?]
  5. 将内容写回第三个文件[?]