我已经使用 .getBody() 从 GmailApp 中提取了一些 html,并希望返回一些 html 来过滤特定标记和内容,其中内容与数组中的任何值匹配(特别是与特定文本的链接)。看看这个解决方案,我认为最简单的方法是使用Xml.parse()
和过滤对象,但不能超越创建 XmlDocument。
例如,如果:
var html = '<div>some text then <div><a href="http://example1.com">foo</a></div> and then <span>some <a href="http://example2.com">baa</a>,and finally <a href="http://example3.com">close</a></span></div>';
和
var linksToRemove = ['baa','foo'];
我怎么能回来
var newHtml = '<div>some text then <div></div> and then <span>some ,and finally <a href="http://example3.com">close</a></span></div>';
使用
var obj = Xml.parse(html, true);
我可以得到一个要处理的对象,但一切都脱离了那里(我也考虑过只使用.replace()
,但考虑到与 RegEx 匹配的问题,我认为最好避免)