C# 匹配包含一个或多个标记的
标记 我需要一个正则表达式来匹配任何有一个或多个strike标记的p标记。 例如:C# 匹配包含一个或多个标记的,c#,regex,C#,Regex,标记 我需要一个正则表达式来匹配任何有一个或多个strike标记的p标记。 例如: <p><strike>Match this</strike></p> <p style="">Hey! <strike>Match this</strike> also</p> <p><strike>Match this</strike> entire <strike>p
<p><strike>Match this</strike></p>
<p style="">Hey! <strike>Match this</strike> also</p>
<p><strike>Match this</strike> entire <strike>p tag</strike></p>
谢谢 您可以使用这个正则表达式
<p[^<>]*>.*?<strike>.*?</p>
我试过你用哪种语言… *.*?,但是我很惊讶没有人警告过你用cthulu的方式解析html:哦,对不起。]*> .*.?。看看这件事在起作用:
HtmlDocument doc = new HtmlDocument();
doc.Load(yourStream);
//strikeNodes contains all the p nodes
var strikeNodes = doc.DocumentNode.SelectNodes("//p[strike]");
//pText contains all p nodes in textual format
List<string> pText= doc.DocumentNode.SelectNodes("//p[strike]").Select(x=>x.OuterHtml);