尝试在C#中编写一个接受以下任何/所有内容的正则表达式:
(这个问题与其他类似的问题有些不同,因为这是一个单词,采用mm/dd/yyyy格式.只需要模式而不需要验证它的可能性.即99/99/9999是好的)
我无处可去.据我所知(这只承认02/01/1968):
Regex regex = new Regex(@"^\d{2}/\d{2}/\d{4}$",RegexOptions.IgnorePatternWhitespace);
Match x = regex.Match(birthdate);
if (x.Success == false) return;
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助.(对正则表达式的解释将是最受欢迎的).
如评论中所述,使用日期时间解析器.获得正确的正则表达式(仅返回有效的日期时间)可能非常复杂且难以维护.
var formats = new[] { "d/M/yyyy", "dd/M/yyyy", "d/MM/yyyy", "dd/MM/yyyy" };
DateTime dt;
if (DateTime.TryParseExact(input, formats, null, DateTimeStyles.None, out dt))
{
//parsed correctly
}
Run Code Online (Sandbox Code Playgroud)
顺便说一句:你的问题不清楚你是否想要,dd/mm或者mm/dd我选择了第一个
| 归档时间: |
|
| 查看次数: |
4825 次 |
| 最近记录: |