public StandardUnit(string value) { //--------------------------// //--- Extract the prefix ---// //--------------------------// string prefix; if (!BinaryPrefixes.HasPrefix(value, out prefix)) { MetricPrefixes.HasPrefix(value, out prefix); } Prefix = prefix; Unit = value.Substring(Prefix.Length); var rgx = new Regex(PATTERN); if (!rgx.Match(Unit).Success) { Prefix = null; Unit = null; } }