我有时间:“P3M10DT5H2M” 我试图解析这些代码:
var timespan = "P3M10DT5H2M"
string[] formats = new[] { "'PT's'S'", "'PT'm'M'", "'P'd'D'", "'PT'h'H'", "'P'd'DT'h'H'", "'P'd'DT'h'H'm'M'", "'PT'h'H'm'M'", "'P'd'DT'h'H'm'M's'S'", "'P'm'M'd'DT'h'H'm'M'" };
TimeSpan.ParseExact((string)timespan , formats, CultureInfo.InvariantCulture);
但是会发生以下错误: mscorlib.dll
中发生了'System.FormatException'类型的第一次机会异常其他信息:字符串未被识别为有效的TimeSpan。
最后一种格式应与此字符串匹配,但不是为什么?而另一个问题我的方式并不是那么好。因为我必须以格式编写所有可能性。所以我应该使用正则表达式而不是格式数组。请帮帮我。