如何提取<;strong>;标签使用C#
本文关键字:strong gt 标签 lt 何提取 提取 | 更新日期: 2023-09-27 18:19:52
假设我有一个字符串,如下所示:
"Unneeded text <strong>Needed Text</strong> More unneeded text"
如何仅提取"所需文本"?我猜Regex可能是最简单的方法,但Regex在我看来仍然像象形文字
Regex regex = new Regex("<strong>(.*)</strong>");
var v = regex.Match("Unneeded text <strong>Needed Text</strong> More unneeded text");
string s = v.Groups[1].ToString();
您不需要regex。
您可以使用String.SubString
和String.Split
方法,如;
string s = "Unneeded text <strong>Needed Text</strong> More unneeded text";
Console.WriteLine(s.Substring(s.IndexOf("<strong>") + "<strong>".Length, s.IndexOf("</strong>") - s.IndexOf("<strong>") - "<strong>".Length));
输出将为;
Needed Text
这里是演示。
看看HTML敏捷包或AngleSharp
使用HTMLAgilityPack,省得头疼。应该这样做:
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml("html...");
var innerText = doc.DocumentNode.Descendants("strong").Select(x => x.InnerText).SingleOrDefault();
举个例子,一个简单的Split
就可以做到,例如
var innerText = text.Split('>')[1].Split('<')[0];
使用像这样的简单正则表达式怎么样
(?<=<strong>).+?(?=<)