我正在尝试使用这样的正则表达式:
string Size= "10.5M";
Match m = null;
if ((m = (new Regex(@"(\d)([MGTP%]?)", RegexOptions.IgnoreCase).Match(Size))).Success)
{
Size = m.Groups[1].ToString();
if (m.Groups.Count > 1)
SizeUnit = m.Groups[2].ToString(); // if not given, SizeUnit is percentage
}
但是当我传递该值时,Size 显示为 10,SizeUnit 显示为“”,而不是预期的 Size = 10.5 和 SizeUnit = M
请您参考如下方法:
\d 与 '.' 不匹配。请改用 [0-9]+(\.[0-9]+)?。
