string str = "class=\"customer-service-rightside-content-widget\"> <div class=\"content_asset\"> <p><img width=\"1300\" height=\"426\" alt=\"\" src=\"~/media/C14BCC5F47D54252B371B67E718DAC02.ashx\" ";
如何从下面的字符串中单独检索src路径。 我尝试了几个正则表达式,但我得不到正确的结果。我正在使用C#正则表达式。
答案 0 :(得分:1)
答案 1 :(得分:0)
我建议您使用HtmlAgilityPack来解析HTML(可从NuGet获得)。但是你应该为这个字符串包括开始和结束标记(假设你有<div>
),因为目前你有一些带有标记的子字符串:
string str = "<div class=\"customer-service-rightside-content-widget\"> <div class=\"content_asset\"> <p><img width=\"1300\" height=\"426\" alt=\"\" src=\"~/media/C14BCC5F47D54252B371B67E718DAC02.ashx\"/></div>";
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(str);
var img = doc.DocumentNode.SelectSingleNode("//img[@src]");
var src = img.Attributes["src"].Value;
结果:
~/media/C14BCC5F47D54252B371B67E718DAC02.ashx
答案 2 :(得分:0)
这有点乱,但它快速而简单,您不必像其他一些答案那样安装任何软件包:
string str = "class=\"customer-service-rightside-content-widget\"> <div class=\"content_asset\"> <p><img width=\"1300\" height=\"426\" alt=\"\" src=\"~/media/C14BCC5F47D54252B371B67E718DAC02.ashx\" ";
int srcIndex = str.IndexOf("~");
str = str.Substring(srcIndex);
var endIndex = str.IndexOf("\"");
var thisIsYourSrc = str.Substring(0, endIndex); // this will be the value that's in your scr attribute
<强>结果:强>
〜/媒体/ C14BCC5F47D54252B371B67E718DAC02.ashx