日期:2014-05-17  浏览次数:20839 次

求一条正则表达式,匹配日期时间的
从网上获取了一些string的文本如下,现在想将日期时间部分抽取出来(即:mm月dd日 mm:ss,不要括号),用以插入数据库新闻表中一个叫“时间”的字段里;


我知道用split也可以做到这一点,但应该没有用正则的匹配那么完美,因为如果文本当中遇到还有括号的话,那就麻烦了,所以恳请高手相助,谢谢啊

HTML code


金隅原董事候选人逝世 推荐于世良为新任候选人(09月10日 13:05)
中燃暂未获北控洽业务合作 未来关系或更紧密(09月10日 12:25)
民生紧急72小时:外资围剿公司火线会议维稳(09月10日 11:06)
消费者称蒙牛牛奶现活虫索赔10万 蒙牛否认(09月10日 10:05)
...




------解决方案--------------------
C# code
string tempStr = @"金隅原董事候选人逝世 推荐于世良为新任候选人(09月10日 13:05)
中燃暂未获北控洽业务合作 未来关系或更紧密(09月10日 12:25)
民生紧急72小时:外资围剿公司火线会议维稳(09月10日 11:06)
消费者称蒙牛牛奶现活虫索赔10万 蒙牛否认(09月10日 10:05)
";
                List<string> result = Regex.Matches(tempStr,@"(?<=\()[^()]+?(?=\))").Cast<Match>().Select(a=>a.Value).ToList();
                /*
                 *         [0]    "09月10日 13:05"    string
        [1]    "09月10日 12:25"    string
        [2]    "09月10日 11:06"    string
        [3]    "09月10日 10:05"    string

                 */

------解决方案--------------------
这样写严密一些:\((\d{1,2}月\d{1,2}日 \d{1,2}:\d{1,2})