当前位置:编程学习 > C#/ASP.NET >>

ListBox1.Items.IndexOf 怎样带星号模糊搜索?

比如 ListBox1 中有 项目 abc、123、a456


比如需要的是 *6

用索引 可以带星号搜索吗? --------------------编程问答-------------------- 没人回答吗? --------------------编程问答-------------------- 当然可以搜索 但是手动进行的
循环每一项,用正则去匹配 --------------------编程问答-------------------- 循环我知道的 

但ListBox项目多的话 循环成为 程序的颈瓶

like “*6”

--------------------编程问答-------------------- do
  {
  x = listBox1.FindString(searchString, x);
  if (x != -1)
  {
  if (listBox1.SelectedIndices.Count > 0)
  {
  if(x == listBox1.SelectedIndices[0])
  return;
  }
  listBox1.SetSelected(x,true);
  }
  }while(x != -1); 

listBox1.FindStringExact("");
遍历regex.ismatch --------------------编程问答-------------------- 应该可以 --------------------编程问答-------------------- 不可以 --------------------编程问答-------------------- 你可以把listbox里的项目存在DataTable里
DataTable.Select()方法
可以写带like的sql,就可以模糊搜索了 --------------------编程问答-------------------- 我给你写了个实例 自己试试吧

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim i As Integer
        '先加点数据进来
        For i = 0 To 100
            ListBox1.Items.Add(i)
        Next

        '这个是匹配的代码
        If ListBox1.Items.Count = 0 Then Exit Sub '匹配前确定listbox中是否有数据
        For i = 0 To ListBox1.Items.Count - 1
            If ListBox1.Items.Item(i) Like "*6" Then '这句是匹配的核心代码 也就是一个 Like 语句的运用
                Debug.Print(ListBox1.Items.Item(i) & " 符合*6的要求")
            End If
        Next
    End Sub
补充:.NET技术 ,  VB.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,