嗨,我有很长的字符串:
'bla bla bla... <img src="/uploads/photo.png" width="143" height="136" /> bla bla bla...'
我希望从这个长字符串中提取:图片标记 - 宽度,高度,当然还有路径...可能是这样的:
<img src="*" width="*" height="*" />
但我不知道如何获取“*”数据。你能建议我提取代码来提取图像路径(*
)。可能在C#,VB或Java ......任何事情。谢谢!
答案 0 :(得分:2)
不要使用正则表达式来解析html。使用html解析器insted。例如。你可以使用HtmlAgilityPack:
var html = "bla... <img src=\"/uploads/photo.png\" width=\"143\" height=\"136\" /> bla...";
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);
var img = doc.DocumentNode.Element("img");
var src = img.Attributes["src"].Value; // "/uploads/photo.png"
var width = img.Attributes["width"].Value; // "143"
var height = img.Attributes["height"].Value; // "136"
var parser = new HtmlParser();
var doc = parser.Parse(html);
var img = doc.QuerySelectorAll("img").FirstOrDefault();
var src = img.Attributes["src"].Value; // "/uploads/photo.png"
var width = img.Attributes["width"].Value; // "143"
var height = img.Attributes["height"].Value; // "136"
答案 1 :(得分:1)
这是一个使用Regex的简单JavaScript解决方案:
> s = 'bla bla bla... <img src="/uploads/photo.png" width="143" height="136" /> bla bla bla...'
> s.match(/<.*>/)[0]
'<img src="/uploads/photo.png" width="143" height="136" />'