在RegExLib网站中找到此日期时间正则表达式 - > http://regexlib.com/REDetails.aspx?regexp_id=361
string pattern = @"^(((((0[13578])|([13578])|(1[02]))[\-\/\s]?((0[1-9])|([1-9])|([1-2][0-9])|(3[01])))|((([469])|(11))[\-\/\s]?((0[1-9])|([1-9])|([1-2][0-9])|(30)))|((02|2)[\-\/\s]?((0[1-9])|([1-9])|([1-2][0-9]))))[\-\/\s]?\d{4})(\s(((0[1-9])|([1-9])|(1[0-2]))\:([0-5][0-9])((\s)|(\:([0-5][0-9])\s))([AM|PM|am|pm]{2,2})))?$";
var match = Regex.Match("test 123 11/30/2003 10:12:24 am", pattern, RegexOptions.IgnoreCase);
如果字符串是精确的(它没有找到测试123中的字符串),上面的工作正常,但是如何在某处找到嵌入字符串的日期(如图所示)?
答案 0 :(得分:1)
您的正则表达式匹配字符串的开头(^
)和结尾($
)。如果从表达式中删除相应的元素,它将在字符串中的任何位置显示日期。
以下是all regEx characters的链接。