我在使用正则表达式获取字符串中的日期时遇到麻烦。
范例:
string text = "75000+ Sept.-Oct. 2004";
MatchCollection dates = Regex.Matches(text, @"[0-9]{5,}[+][\s](jan|feb|fev|mar|apr|avr|may|mai|jun|jui|jul|jui|aug|aoû|sept|oct|nov|dec)[\.][\-](jan|feb|fev|mar|apr|avr|may|mai|jun|jui|jul|jui|aug|aoû|sept|oct|nov|dec)[\.]\s[0-9]{4}", RegexOptions.IgnoreCase);
此代码与我当前的字符串匹配,但我想进入我的matchcollection“ 2004年9月”和“ 2004年10月”,以便在2个datetime中对其进行解析。
如果有人有任何想法,非常感谢。
最佳答案
检查数组的长度,等等。您应该明白
string text = "75000+ Sept.-Oct. 2004";
MatchCollection dates = Regex.Matches(text, @"[0-9]{5,}[+][\s](jan|feb|fev|mar|apr|avr|may|mai|jun|jui|jul|jui|aug|aoû|sept|oct|nov|dec)[\.][\-](jan|feb|fev|mar|apr|avr|may|mai|jun|jui|jul|jui|aug|aoû|sept|oct|nov|dec)[\.]\s([0-9]{4})", RegexOptions.IgnoreCase);
Console.WriteLine(dates[0].Groups[1] + " " + dates[0].Groups[3]);
Console.WriteLine(dates[0].Groups[2] + " " + dates[0].Groups[3]);
关于c# - 在C#中的字符串中获取日期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2400468/