Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在c中使用contains搜索节点#_C#_Linq - Fatal编程技术网

C# 在c中使用contains搜索节点#

C# 在c中使用contains搜索节点#,c#,linq,C#,Linq,我试图在我的C#程序中从HTML输入搜索所有以searchResult1、searchResult2开始,直到searchResult10的节点。这是我的密码 var results = hdoc.DocumentNode .Descendants("div") .Where(x => x.Attributes.Contains("id") && x.Attributes["i

我试图在我的C#程序中从HTML输入搜索所有以searchResult1、searchResult2开始,直到searchResult10的节点。这是我的密码

var results = hdoc.DocumentNode
             .Descendants("div")
             .Where(x => x.Attributes.Contains("id") &&
                       x.Attributes["id"].Value.Contains("\"searchResult")).ToList();
for (int i = 0; i < results.Count; i++)
            {
                rawdata[i] = results[i].InnerHtml.Trim();
            }
var results=hdoc.DocumentNode
.后代(“div”)
其中(x=>x.Attributes.Contains(“id”)&&
x、 属性[“id”].Value.Contains(“\”searchResult”)).ToList();
for(int i=0;i
我的HTMl看起来像这样

<div id="searchResultTable" class="searchReturnData"> some junk html
<li id="searchResult1" class="searchResult searchResultsData_OFF"> searchResult1 html </li>
<li id="searchResult2" class="searchResult searchResultsData_OFF">searchResult2 html </li>
<li id="searchResult3" class="searchResult searchResultsData_OFF">searchResult3 html </li>
</div>
         HtmlDocument doc = new HtmlDocument();
         doc.Load(@"C:\file.html");
         var root = doc.DocumentNode;
         var a_nodes = root.Descendants("li").Where(c=>c.GetAttributeValue("id","")
                       .Contains("searchResult")).ToList()
一些垃圾html
searchResult1 html
searchResult2 html
searchResult3 html
我只想打印searchResult1、searchResult2、searchResult3 html,而不想打印一些垃圾html。我如何才能做到这一点

谢谢 Rashmi

如果您可以使用解析HTML。您可以这样做

<div id="searchResultTable" class="searchReturnData"> some junk html
<li id="searchResult1" class="searchResult searchResultsData_OFF"> searchResult1 html </li>
<li id="searchResult2" class="searchResult searchResultsData_OFF">searchResult2 html </li>
<li id="searchResult3" class="searchResult searchResultsData_OFF">searchResult3 html </li>
</div>
         HtmlDocument doc = new HtmlDocument();
         doc.Load(@"C:\file.html");
         var root = doc.DocumentNode;
         var a_nodes = root.Descendants("li").Where(c=>c.GetAttributeValue("id","")
                       .Contains("searchResult")).ToList()

您正在尝试使用类似于XML的HTML吗?因为不要..改用HTML Agility Pack。也尝试过了HtmlNodeCollection totNodes=hdoc.DocumentNode.SelectNodes(//li[contains(@id='searchResult')]))i get error“i get error”“完全没有告诉我们您遇到的问题。编译错误?运行时异常?意外的行为?怎么搞的?你以为会发生什么?您已经尝试了什么来修复此问题?请详细说明。@tnw,它的运行时错误。“//li[contains(@id='searchResult')]”中的函数“contains”的参数数无效