1. 程式人生 > >按照指定條件查詢字串

按照指定條件查詢字串

實現效果:

  

知識運用:

  Array類的FindAll()方法,根據指定條件在陣列中檢索元素 返回一個包含匹配項的陣列  無匹配項則返回空陣列

  public static T[] FindAll<T>(T[]array,Predicate<T>match)

  array:  要搜尋從零開始的的一維Array陣列

  match:  Predicate<T>,定義要搜尋的元素的條件;

實現程式碼:

        string[] str_area;
        private void button1_Click(object sender, EventArgs e)
        {
            if(textBox1.Text!=string.Empty){
                string[] arr_return = Array.FindAll
                    (str_area,(s)=>s.Contains(textBox1.Text));
                if (arr_return.Length > 0){ //判斷找到
                    textBox2.Clear();
                    textBox2.Font = new Font("楷體", 15, FontStyle.Bold);
                        foreach(string s in arr_return){    //遍歷新增
                            textBox2.Text += s + Environment.NewLine;
                        }
                }
                else { textBox2.Clear(); textBox2.Text = "沒有找到"; }
            }else{
                textBox2.Clear();
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            str_area=new string[]{"湖北湖南","江西江淮","河北河南","山西陝西","長治長子"};
            foreach(string str in str_area){
                label2.Font = new Font("楷體",15,FontStyle.Bold);
                label2.Text += str + Environment.NewLine;
            }
        }