所以我的作业有问题我必须将歌曲的表演者(Eric Clapton,Omega等)放入通用列表中。这些单词来自一个文件,它看起来像这样逐行:
1 5 3深紫色:态度不好
2 3 36 Eric Clapton:Terraplane Blues
3 2 46 Eric Clapton:Crazy Country Hop
3 3 25 Omega:Ablakok
2 4 23埃里克克莱普顿:如果可以,请抓住我
1 3 27 Eric Clapton:Willie和The Hand Jive
3 4 33欧米茄:一个szamuzott
2 6 20 Eric Clapton:旧爱
问题是,如果我将一行加载到一个字符串中并将其拆分,那么表演者并不总是在同一个索引中我如何将表演者加载到一个列表中?
答案 0 :(得分:1)
你想要一个看起来像这样的正则表达式:
\ d + \ d + \ d +([^:] +)
这应该根据你的列表给你艺术家的名字。如果您需要一个工具来测试您的正则表达式,this site效果很好。
答案 1 :(得分:0)
您可以使用:
string txt = System.IO.File.ReadAllText("myfile.txt");
List<string> lines = txt.Split(System.Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries).ToList();
foreach (string line in lines)
{
string name = System.Text.RegularExpressions.Regex.Replace(line, @"[\d-]", string.Empty).Trim();
}