我对正则表达式不太满意,所以我希望您能用一个表达式来帮助我,以便仅替换html标记的src属性中双引号之间的内容,即该属性的内容如下:
TRegEx.Replace(Str, '(?<=<img\s+[^>]*?src=(?<q>[""]))(?<url>.+?)(?=\k<q>)', 'Nova string');
换句话说:src =“ old content
” => src =“ new content
”
在上面有关C#中相同主题的问题中,我已经看到了此表达式,但是不适用于Delphi。
那么,该怎么做呢?
提前谢谢。
解决方案:
procedure CHANGE_IMAGES(Document: IHTMLDocument2);
var
I: Integer;
HTMLImgElement: IHTMLImgElement;
HTMLElementCollection: IHTMLElementCollection;
begin
HTMLElementCollection := Document.images;
for I := 0 to HTMLElementCollection.length - 1 do
begin
HTMLImgElement := (HTMLElementCollection.item(I, 0) as IHTMLImgElement);
HTMLImgElement.src := 'My_IMAGE_PATH_OR_URL';
Exit;
end;
end;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句