Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 正则表达式-查找Img元素_C#_Regex - Fatal编程技术网

C# 正则表达式-查找Img元素

C# 正则表达式-查找Img元素,c#,regex,C#,Regex,我试图让我的正则表达式工作,但没有用: 我只想在html字符串中查找图像标记,以便替换它们: 这是我认为应该起作用的: var regex = new Regex(@"<img.*>"); return regex.Replace(content, "<p><i><b>(See Image Online)</b></i></p>"); 它确实起到了部分作用,但它似乎剥离的不仅仅是图像标签 这是我想要匹配的示例

我试图让我的正则表达式工作,但没有用:

我只想在html字符串中查找图像标记,以便替换它们:

这是我认为应该起作用的:

var regex = new Regex(@"<img.*>");

return regex.Replace(content, "<p><i><b>(See Image Online)</b></i></p>");
它确实起到了部分作用,但它似乎剥离的不仅仅是图像标签

这是我想要匹配的示例:

你需要其中之一

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAM0AAAD
 NCAMAAAAsYgRbAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5c
 cllPAAAABJQTFRF3NSmzMewPxIG//ncJEJsldTou1jHgAAAARBJREFUeNrs2EEK
 gCAQBVDLuv+V20dENbMY831wKz4Y/VHb/5RGQ0NDQ0NDQ0NDQ0NDQ0NDQ
 0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0PzMWtyaGhoaGhoaGhoaGhoaGhoxtb0QGho
 aGhoaGhoaGhoaGhoaMbRLEvv50VTQ9OTQ5OpyZ01GpM2g0bfmDQaL7S+ofFC6x
 v3ZpxJiywakzbvd9r3RWPS9I2+MWk0+kbf0Hih9Y17U0nTHibrDDQ0NDQ0NDQ0
 NDQ0NDQ0NTXbRSL/AK72o6GhoaGhoRlL8951vwsNDQ0NDQ1NDc0WyHtDTEhD
 Q0NDQ0NTS5MdGhoaGhoaGhoaGhoaGhoaGhoaGhoaGposzSHAAErMwwQ2HwRQ
 AAAAAElFTkSuQmCC" alt="beastie.png">
如果支持或不支持

new Regex(@"<img.*?>");

您的问题是,正则表达式与它找到的第一个>不匹配,而是与最后一个匹配。

第一个非常有效。谢谢-我真的需要花点时间学习正则表达式!正则表达式不是处理html的好工具,对我来说,它是最糟糕的工具。为什么不使用或?决不能在非正则的html上使用正则表达式。如果将html内容添加到由WebBrowser类而不是控件创建的HtmlDocument,则可以使用src属性直接读取所有相关链接。
new Regex(@"<img[^>]*>");