在 C# 中使用脚本替换

本文关键字:脚本 替换 | 更新日期: 2023-09-27 18:31:14

如何读取文本文件的某个部分并替换为另一行?

就像在文件中一样,有一部分:"Attend_10"想要将其替换为"Attend_10_[Variable_Value]。

如何在 SSIS 中使用脚本 (C#) 执行此操作?

在 C# 中使用脚本替换

我不确定您的输入是什么,或者匹配要求,但您可以轻松地使用 Linq 或 for 循环来执行此操作。下面是两个简单的示例,它们sample.txt读取输入文件并写入输出文件out.csv

使用 Linq:

string periodValue = "201410";
File.WriteAllLines(
    "out.txt",
    File.ReadAllLines("sample.txt").
        Select(l => l.Replace("Attend_10", "Attend_10_" + periodValue))
    );

使用 for 循环:

string periodValue = "201410";
string[] lines = File.ReadAllLines("sample.txt");
for (int i = 0; i < lines.Length; i++)
{
    lines[i] = lines[i].Replace("Attend_10", "Attend_10_" + periodValue);
}
File.WriteAllLines("out.txt", lines);

输入:样本.txt:

<SomeTextHere>
<File Name>=Attend_10
<MoreTextHere>
输出

:输出.txt

<SomeTextHere>
<File Name>=Attend_10_201410
<MoreTextHere>

如果您的匹配要求更高级,则可以使用 RegEx 匹配每个字符串中的某些模式。