使用c#中的string.Contains()方法匹配精确字符串

c# html-agility-pack

我有一个HTML内容。我正在使用HtmlAgilityPack解析内容。我需要替换属性
' align =“middle” '与' align =“center” ',我正在使用函数

if(htmlDoc.DocumentNode.OuterHttml.Contains("align = "middle""))
htmlDoc.DocumentNode.OuterHttml.Replace("align = "middle","align = "center"")

但是,即使对于**valign = "middle"**条件也会返回true!

如果除了Contains()以外的条件我还需要输入什么?

一般承认的答案

是的我想在html内容中找到匹配。

然后使用HtmlAgilityPack 。你的代码就像是。

var doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(HtmlString);

var tds = doc.DocumentNode.SelectNodes("//td[@align='middle']");

或使用LINQ这样的东西

var tds = doc.DocumentNode.Descendants("td")
                .Where(td => td.Attributes["align"].Value == "middle")
                .ToList();

热门答案

如果你的字符串像“blablabla align ='align = \”middle \“blablabla”那么你可以这样做:

Contains(" align = \"middle\" ") // spaces before and after

但其他人怎么说很难理解你想要的东西。



许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因