我试图将这个字符串分解为2种颜色,并想知道是否有更简洁的方法来实现相同的结果?
// Obtain colour values string cssConfig = "primary-colour:Red,secondary-colour:Blue"; var parts = cssConfig.Split(','); var colour1 = parts[0].Split(':')[1]; var colour2 = parts[1].Split(':')[1];
解决方法
你可以使用正则表达式
string cssConfig = "primary-colour:Red,secondary-colour:Blue"; var reg = new Regex(@"([\w\-]+)\:([\w\-]+)"); foreach (Match match in reg.Matches(cssConfig)) { }
你也可以用LINQ做点什么
var cssConfigDict = cssConfig.Split(',') .Select(x => x.Split(':')) .ToDictionary(x => x.FirstOrDefault(),y => y.LastOrDefault());
LINQ可能有更好的方法!