将不需要的页脚文本替换为空白区域

Replace unwanted footer text with empty space

本文关键字:空白 区域 文本替换 不需要      更新时间:2023-09-26

如何替换不需要的页脚文本?

 ---  
This email has been checked for viruses by Avast antivirus software.  
http://www.avast.com

HTML 代码页脚:

     <span class="Apple-converted-space">&nbsp;</span><br><br><br>---<span class="Apple-converted-space">&nbsp;</span><br>
This email has been checked for viruses by Avast antivirus software.<span class="Apple-converted-space">&nbsp;</span><br>
<a href="http://www.avast.com" style="text-decoration: none; color: rgb(22, 54, 87); ">
http://www.avast.com</a></span></span> 

几乎完成了,但我认为代码可以放在一行上

document.getElementById('footer').innerHTML = data;
data = data.replace(/---.*/gi, '');
data = data.replace((/(<br>This email has.*).+?/gi, '');
data = data.replace((/(http:'/'/www'.avast'.com)<'/a>?(<br's*'/?>{2,3})?/gi, '');
document.getElementById('footer').innerHTML = data;

在论坛中找到的示例

data = data.replace(/(<br>){2,3}---(<br>This).+?(avast'.com)<'/a>( ---)?/gi, '');

上面的代码可以在纯HTML中工作,它不适用于WebKit生成的代码

正则表达式:

---.*|<br>'s*This email has.*|<a'b[^>]*>.*?(http:'/'/www'.avast'.com).*?</a>
  • ---.* ==> 匹配来自以下位置的文本: data.replace(/---.*/gi, '');

  • <br>'s*This email has.* ==> 匹配以下文本:data.replace((/(<br>This email has.*).+?/gi, '');//更正以匹配<br>
    后的空格字符作为替代方案,您可以编写:<br>'s*This email has[^<]*停在行尾或下一个标签的开头。

  • <a'b[^>]*>.*?http:'/'/www'.avast'.com.*?</a> ==> 匹配名称中包含"http://www.avast.com"的链接(链接文本)。

  • | 用于匹配替代正则表达式,如果以前的正则表达式不匹配

正则表达式测试


result = text.replace(/---.*|<br>'s*This email has.*|<a'b[^>]*>.*?(http:'/'/www'.avast'.com).*?<'/a>/gi, "");

/(<br>){3}['s'S]+?avast.com<'/a>/ 应该适合您:

  1. (<br>){3} 与 3 个 br 标签完全匹配
  2. ['s'S]匹配任何内容,包括换行符(基本上表示任何空格字符和任何非空格字符,即所有字符)
  3. +表示要匹配前面的一个或多个条件(任何字符)
  4. ?说要尽可能少地匹配最后一个标准(任何字符)以达到下一个标准
  5. avast.com<'/a>/与此字符串完全匹配

function removeFooter(){
  var elm = document.getElementById('footer');
  elm.innerHTML = elm.innerHTML.replace(/(<br>){3}['s'S]+?avast.com<'/a>/, "repalced footer text");
}
#msgBody{
  height:55px;
  width:300px;
  background-color:#999999;
  margin-top:10px;
  
  }
<input type="button" onclick="removeFooter()" value="Remove Footer"/>
<div id="msgBody"></div>
<div id="footer">
<br><br><br>
 <span class="Apple-converted-space">&nbsp;</span><br>
  This email has been checked for viruses by Avast antivirus software.
<span class="Apple-converted-space">&nbsp;</span><br>
<a href="http://www.avast.com" style="text-decoration: none; color: rgb(22, 54, 87); "> http://www.avast.com</a>
</div>