C# 如何使用xpath查询从XML文件中获取节点元素,

C# 如何使用xpath查询从XML文件中获取节点元素,,c#,xml,xpath,C#,Xml,Xpath,我想通过搜索模式获取元素,比如如果我键入“an”,那么我想要所有包含“an”示例的元素=人、动物、风扇、裤子 这是我的代码这里我使用foreach循环来显示所有搜索元素,但我不想使用foreach循环,只想直接从xpath查询中获取所有列表请帮助我解决它对我来说非常重要的问题 private void Search2_Click_1(object sender, EventArgs e) { XmlNodeList nodes = myxml.Docu

我想通过搜索模式获取元素,比如如果我键入“an”,那么我想要所有包含“an”示例的元素=人、动物、风扇、裤子

这是我的代码这里我使用foreach循环来显示所有搜索元素,但我不想使用foreach循环,只想直接从xpath查询中获取所有列表请帮助我解决它对我来说非常重要的问题

private void Search2_Click_1(object sender, EventArgs e)
        {


            XmlNodeList nodes = myxml.DocumentElement.SelectNodes("/students/student/s_name" );

            string ha = search.Text;

            if (listbox11.Text == "Name")
            foreach(XmlNode node in nodes)
            {

                if(System.Text.RegularExpressions.Regex.IsMatch(node.InnerText,ha))
                { 
                    listBox1.Text += node.InnerText + "\r\n"; 
                }

            }

        }
用这个

private void Search2_Click_1(object sender, EventArgs e)
        {
  string ha = search.Text;

XmlNodeList nodes = myxml.DocumentElement.SelectNodes("/students/student/[contains(s_name,ha)]");

}

**我编写的代码很简单,xpath查询将只获取相关的元素节点,但如果要打印,则使用foreach循环**

私有无效搜索2\u单击\u 1(对象发送者,事件参数e) {

       string ha = search.Text;

        if (listbox11.Text == "Name")
        {
            listBox1.Text = "";

            XmlNodeList nodes = myxml.DocumentElement.SelectNodes("//s_name[descendant-or-self::*[contains(.,'" + ha + "')]]");
            foreach (XmlNode node in nodes)
            {


                    listBox1.Text += node.InnerText + "\r\n";


            }
        }

    }

如何在VB6中编写相同的正则表达式…是我需要添加引用以运行正则表达式Dim ha作为字符串ha=searchText.Text Set nodes=doc.documentElement.selectNodes(//s_name[后代或自身::*[包含(,“&ha+”)]])的任何内容