C# 使用正则表达式C获取选定的文本父标记# 斯罗德基姆普拉特诺斯奇酒店。DC-zakup paliwa na stacji benzynowej 101-500(150兹尔)。27

C# 使用正则表达式C获取选定的文本父标记# 斯罗德基姆普拉特诺斯奇酒店。DC-zakup paliwa na stacji benzynowej 101-500(150兹尔)。27,c#,asp.net,regex,C#,Asp.net,Regex,我有一根上面这样的绳子 如果所选文本为“srodkiem”,是否可以获得相关的跨度标签 这可以使用正则表达式吗 这可能使用正则表达式吗?p 不可以。请使用HTML解析器 这可能使用正则表达式吗?p 不。使用HTML解析器。是的,可以使用正则表达式,但您应该使用。使用它将大大减少维护代码的痛苦。是的,使用regex是可能的,但您应该使用它。使用它将大大减少维护代码的痛苦。我用HTML Agility pack编写了一个小函数: <SPAN id=spanD121C150D2 style="

我有一根上面这样的绳子

如果所选文本为“srodkiem”,是否可以获得相关的跨度标签

这可以使用正则表达式吗

这可能使用正则表达式吗?p

不可以。请使用HTML解析器

这可能使用正则表达式吗?p


不。使用HTML解析器。

是的,可以使用正则表达式,但您应该使用。使用它将大大减少维护代码的痛苦。

是的,使用regex是可能的,但您应该使用它。使用它将大大减少维护代码的痛苦。

我用HTML Agility pack编写了一个小函数:

 <SPAN id=spanD121C150D2 style="BACKGROUND-COLOR: antiquewhite" CategoryID="1" MessageID="2316" refSpan="">
 <SPAN id=span1CE69EDE12 style="BACKGROUND-COLOR: blue" CategoryID="2" MessageID="2316" refSpan="">platnosci inny srodkiem platnosci. DC - zakup paliwa na stacji benzynowej 101-500 (150 zl). 27 
 </SPAN>
 </SPAN>
公共静态HtmlNode GetNodeByInnerText(字符串sHTML,字符串sText)
{
HtmlAgilityPack.HtmlDocument doc=新的HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(sHTML);
int Position=sHTML.ToString().IndexOf(sText);
返回FindNodeByPosition(doc.DocumentNode,Position);
}
私有静态HtmlNode FindNodeByPosition(HtmlNode节点,int位置)
{
HtmlNode foundNode=null;
foreach(node.ChildNodes中的HtmlNode子节点)
{
if(child.StreamPosition位置))
{
如果(child.ChildNodes.Count>0&
!(child.ChildNodes.Count==1&&child.InnerHtml==child.FirstChild.InnerHtml))
{
foundNode=FindNodeByPosition(子节点,位置);
break;//TODO:可能不正确。Was:退出
}
其他的
{
返回儿童;
}
}
}
返回foundNode;
}

我用HTML Agility pack编写了一个小函数:

 <SPAN id=spanD121C150D2 style="BACKGROUND-COLOR: antiquewhite" CategoryID="1" MessageID="2316" refSpan="">
 <SPAN id=span1CE69EDE12 style="BACKGROUND-COLOR: blue" CategoryID="2" MessageID="2316" refSpan="">platnosci inny srodkiem platnosci. DC - zakup paliwa na stacji benzynowej 101-500 (150 zl). 27 
 </SPAN>
 </SPAN>
公共静态HtmlNode GetNodeByInnerText(字符串sHTML,字符串sText)
{
HtmlAgilityPack.HtmlDocument doc=新的HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(sHTML);
int Position=sHTML.ToString().IndexOf(sText);
返回FindNodeByPosition(doc.DocumentNode,Position);
}
私有静态HtmlNode FindNodeByPosition(HtmlNode节点,int位置)
{
HtmlNode foundNode=null;
foreach(node.ChildNodes中的HtmlNode子节点)
{
if(child.StreamPosition位置))
{
如果(child.ChildNodes.Count>0&
!(child.ChildNodes.Count==1&&child.InnerHtml==child.FirstChild.InnerHtml))
{
foundNode=FindNodeByPosition(子节点,位置);
break;//TODO:可能不正确。Was:退出
}
其他的
{
返回儿童;
}
}
}
返回foundNode;
}

您好,感谢您的及时回复。你能给我一个例子,如何在给定的字符串中找到“srodkiem”并得到父元素吗?谢谢谢洛,谢谢你的及时回复。你能给我一个例子,如何在给定的字符串中找到“srodkiem”并得到父元素吗?谢谢当你说“选中”时,你是在说浏览器吗?在这种情况下,除非您谈论的是浏览器控件,否则您将如何使用C#?当您说selected时,您是在谈论浏览器中的控件吗?在这种情况下,除非您讨论的是浏览器控件,否则您将如何使用C#?