使用 .csv 文件中的数据个性化 .txt 文件。 (替换变量)

使用 .csv 文件中的数据个性化 .txt 文件。 (替换变量)

我想为一大群人定制文本文件。目录和文件已经制作完成。每人有 6 个文本文件。这 6 个文本文件总共包含 7 个变量:${FULLNAME}${DOB}${CITY}${ZIP}${STREET}${EMAIL}${ID}

有些变量比其他变量使用得更频繁。我需要将文本文件中的变量替换为.csv文件中的数据。

标题中有一些字段input.csv在文本文件中没有变量,例如FIRSTNAMENEW,这些字段需要被忽略。所有字段都不包含逗号。

这是一个input.csv外观示例。

ID,FULLNAME,FIRSTNAME,EMAIL,DOB,CITY,ZIP,STREET,NEW
1.2;{1},John Example,John,[email protected],01-01-1990,New York,00501,Street 1,yes
1.2;{2},Firstname Lastname,Firstname,[email protected],01-01-1980,Dallas,75227,Lane 2,no

每个input.csv人都有自己的数据行。每个人都有自己的包含文本文件的目录。我们需要确保替换的变量与正确的人匹配。我认为目录的名称可以是一个有用的值,让系统知道在哪里。这让我从中获取电子邮件地址input.csv并将其用作每个人目录的目录名称。

我现在拥有的文件结构如下所示。将来我想添加更多子目录和文本文件。

generate
├── documents
│   ├── [email protected]
│   │   ├── dir1
│   │   │   ├── subdir1
│   │   │   │   └── text5.txt
│   │   │   ├── text1.txt
│   │   │   └── text6.txt
│   │   ├── dir2
│   │   │   └── text2.txt
│   │   ├── dir3
│   │   │   └── text3.txt
│   │   └── dir4
│   │       └── text4.txt
│   └── [email protected]
│       ├── dir1
│       │   ├── subdir1
│       │   │   └── text5.txt
│       │   ├── text1.txt
│       │   └── text6.txt
│       ├── dir2
│       │   └── text2.txt
│       ├── dir3
│       │   └── text3.txt
│       └── dir4
│           └── text4.txt
└── input.csv

text5.txt 的示例(其他文本文件看起来类似)

ID: ${ID}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, "sed ${FULLNAME} eiusmod tempor" incididunt ${DOB} labore et dolore magna ${EMAIL}. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. {Duis aute irure dolor} in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Lorem ${CITY}, ${ZIP}, {STREET}.

预期输出text5.txt

ID: 1.2;{1}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, "sed John Example eiusmod tempor" incididunt 01-01-1990 labore et dolore magna [email protected]. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. {Duis aute irure dolor} in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Lorem New York, 00501, Street 1.

位于目录中的文本文件的所有变量[电子邮件受保护]其子目录需要替换为 John Example 的数据 (input.csv)。这也需要为 info@example 和其他数百人完成。

我花了很长时间才写这篇文章。我很难尽可能地解释我的需求。我希望你们能理解我的问题并帮助我实现这一点。

相关内容