我试图解析字符串,看看“:”后的值是否为整数.如果它不是整数,则从字符串中删除“Test:M”.
这是我的示例字符串.
string testString = "Test:34,Test:M";
结果我需要testString =“测试:34”
string[] data = testString.Split(','); for (int i = 0; i < data.Length; i++) { string[] data1 = data[i].Split(':'); int num = 0; if(Int32.TryParse(data1[1],out num)) { } }
解决方法
您可以继续使用循环结构,但我个人认为LINQ的外观更好一点:
var dummy = 0; var intStrings = testString.Split(',') .Where(s => s.Contains(":") && int.TryParse(s.Split(':')[1],out dummy)) .ToArray(); var result = String.Join(",",intStrings);