嘿伙计们正在编写一个c#应用程序,我似乎无法使用正则表达式将数据拆分为id。
C:\Users\e014425c\Downloads\StoreData\ABE1102013.csv
这是在循环中以字符串形式存储的。我想要: -
ABE1
10
2013
从那里我将各个字符串存储到3个数组中。
问题是,在循环内数据会发生变化,因此您无法使用Contains("ABE1")
非常感谢帮助!
foreach (string word in file)
{
string testString = word;
string firstWords = Regex.Match(testString, @"^(\w+\b.*?){6}").ToString();
Console.Write(firstWords);
}
这就是我如何测试数据
答案 0 :(得分:2)
首先只从路径中获取文件名:
string filename = File.FilenameWithoutExtension(path);
然后使用SubString()
所需的字符:
string a1 = filename.SubString(0, 4);
string a2 = filename.SubString(4, 2);
string a3 = filename.SubString(6, 4);
<小时/>
修改强>
使用一般模式“ABC1_xy_YYYY”最好使用下划线作为分隔符:
string[] field = filename.Split('_');
a1 = field[0];
...