我有几个文本行的文本文件。在每一行中,包含三项必要的信息:用户名,日期和时间。
我通过ListBox
将行添加到StreamReader
控件中,在该控件上方有一个TextBox
控件。我想将用户名放在TextBox
中,但不知道如何。
代码如下:
namespace Zeiterfassung
{
public partial class Uebersicht : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string sPath = @"C:\VSTO\Projects\Zeiterfassung\Zeiterfassung\obj\Debug\Kommt.txt";
using (StreamReader sr = new StreamReader(sPath))
{
while(!sr.EndOfStream)
{
lb_Kommt.Items.Add(sr.ReadLine());
}
}
}
}
}
txt文件中的行与此类似:
User: KIV\vischer, Datum: 10.09.2018, Zeit: 10:49
我需要将“ KIV \ Vischer”放在TestBox
中,而不要放在ListBox
中。
答案 0 :(得分:1)
我会使用RegEx。
它看起来像这样:
User: (?<user>[^,]*?), Datum: (?<datum>[\d]{1,2}\.[\d]{1,2}\.[\d]{2,4}), Zeit: (?<zeit>[\d]{1,2}:[\d]{2})
您可以在此处找到更多详细信息(以及实时演示):
https://regex101.com/r/1YaMxz/2
访问值:
var matches = Regex.Matches(input, pattern, RegexOptions.IgnoreCase);
foreach (Match match in matches)
{
username = match.Groups["user"].Value;
}