List<string> list = new List<string>(); list.Add("5"); list.Add("10ml"); list.Add("20ML"); list.Add("120ml*4"); list.Add("360+120ML"); list.Add("500ML+300ML"); List<string> listRL = new List<string>(); foreach (string item in list) { } 转换后的数据如下 "5" "10" "20" "120" "480" "800"
string[] strs ={ "5", "10ml", "20ML", "120ml/4", "360+120ML123afsda23123/3x5", "360+100ml+sadfasf", "500ML+300ML+'asdfa123123.21312"}; foreach (string str in strs) { MatchCollection ms = new Regex(@"(?<!.+)\d+|(?<=\+)\d+").Matches(str); int num = 0; foreach (Match r in ms) { num += int.Parse(r.Value); }; Response.Write(num + "<br/>"); }
只会出现加号和乘号?没有减号除号?最多只可能出现一种运算,不会出现多个运算符?如果有多个运算符那么优先级如何?
没有其他符号 只有+号 才需要运算