日期:2014-05-17  浏览次数:21020 次

请教,如何遍历提取字符串数组中包含的某个字符
请教,如何遍历提取字符串数组中包含的某个字符
比如 string [] s="a.exe,b.exe,c.txt,ft.swf,s1.xsl"
我想提取包含.EXE 该如何操作
又想把这些提取的字符分别赋值给某个变量,又该如何处理?

------解决方案--------------------
var result = s.Where(o=>o.Index(".exe")>0).ToList();
  
*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/
------解决方案--------------------
           string[] s ={ "a.exe","b.exe","c.txt","ft.swf","s1.xsl"};
            var result = s.Where(o => o.Contains(".exe")).ToList();
            foreach (string item in result)
            {
                textBox1.Text += item + " ";
            }
------解决方案--------------------
版主的方法是最简便的,如果理解不了的话可以用2楼的方法,吧数组变成一个字符串,然后再字符串里面查找有没有这个你要的这个字符串,有的话就把它赋给另一个变量就可以了
------解决方案--------------------
你到底是想从sting中提取还是从string数组中提取啊?
            string s = "a.exe, b.exe, c.txt, ft.swf, s1.xsl";
            Regex reg = new Regex(@"(?i)[^\.,\s]+\.exe");
            MatchCollection mth = reg.Matches(s);
            foreach (Match m in mth)
            {
                Console.WriteLine(m.Value);
            }
            Console.WriteLine();
            string[] str ={ "a.exe", "b.exe", "c.txt", "ft.swf", "s1.xsl" };
            foreach (string ss in str)
            {
                if (ss.Contains(".exe"))
                {
                    Console.WriteLine(ss);
                }
            }
            Consol