gpt4 book ai didi

c# - 从从 .txt 读取的行中获取特定单词

转载 作者:行者123 更新时间:2023-11-30 16:03:16 25 4
gpt4 key购买 nike

现在我正在阅读 .txt 中的一些行。比方说,用户输入他的名字,.txt 中将保存“于 13/04/2016 上午 10:55 登录{username}”。(只是一个例子。)

现在我想阅读 .txt 并将特定部分打印到文本框中。意思是,在文本框中应出现“{Username} - 13/04/2016 - 10:55 am”。

到目前为止,我能够从 .txt 中读取并打印整行。

private void button_print_results_Click(object sender, RoutedEventArgs e)
{
int counter = 0;
string actual_line;


System.IO.StreamReader file_to_read =
new System.IO.StreamReader("myText.txt");
while ((actual_line = file_to_read.ReadLine()) != null)
{

textBox_results.Text = textBox_results.Text +"\n"+ actual_line;
counter++;
}

file_to_read.Close();
}

有没有办法在不覆盖整个文件的情况下达到这个目的?

不,我无法更改名称等的保存格式。(我在这里使用它们是为了更好地理解,我需要阅读/检查的实际行是不同的并且是自动生成的)。

我不期望完整的工作代码,如果你能告诉我我需要查看哪些命令,那就太好了。自从我上次使用 c#/wpf 以来已经有很长时间了,而且我从来没有使用过 Streamreader ...

谢谢

最佳答案

我认为正则表达式是您想要实现的目标的最佳工具。你可以这样写:

Regex regex = new Regex("Logged in (?<userName>.+) on (?<loginTime>.+)");
while ((actual_line = file_to_read.ReadLine()) != null)
{
Match match = regex.Match(actual_line);
if (match.Success) {
string loginInfo = string.Format("{0} - {1}", match.Groups["userName"], match.Groups["loginTime"]);
textBox_results.Text = textBox_results.Text +"\n"+ loginInfo;
}
}

关于c# - 从从 .txt 读取的行中获取特定单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36592580/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com