我试图使我的正则表达式无法正常工作:
我要做的就是在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">
答案 0 :(得分:1)
您需要
new Regex(@"<img.*?>");
(如果支持),如果不支持,
new Regex(@"<img[^>]*>");
您的问题是您的正则表达式与找到的第一个“>”不匹配,而是最后一个。