用于删除的函数<;span></span>;来自JavaScript中json对象数组中的字符串

用于删除的函数<;span></span>;来自JavaScript中json对象数组中的字符串,javascript,html,arrays,Javascript,Html,Arrays,我知道有许多类似的问题张贴,并尝试了一些解决方案,但我真的很感谢一些指导我的具体问题 对于我的数组中的每个项目,我想从我的字符串中删除以下HTML标记: <SPAN CLASS="KEYWORDSEARCHTERM"> </SPAN> var newHeaderString; var printArrayWithExtract; var summaryText; this.setPrintItems = function(printArray) {

我知道有许多类似的问题张贴,并尝试了一些解决方案,但我真的很感谢一些指导我的具体问题

对于我的
数组中的每个项目,我想从我的
字符串中删除以下
HTML标记

<SPAN CLASS="KEYWORDSEARCHTERM"> </SPAN>
var newHeaderString;
var printArrayWithExtract;
var summaryText;

this.setPrintItems = function(printArray) {
  
  angular.forEach(printArray, function(printItem){

    if (printItem.ArticleText === null) {
      summaryText = '';
    }
    else {
      summaryText =  '... ' + printItem.ArticleText.substring(50, 210) + '...';
    }

// Code to replace the HTML markup in printItem.header
// and return newHeaderString

    printArrayWithExtract.push(
      {
        ArticleText: printItem.ArticleText,
        Summary: summaryText,
        Circulation: printItem.Circulation,
        Headline: newHeaderString,
      }
    );

  });

  return printArrayWithExtract;

};
我希望在
HTML标记
中添加条带,给我留下以下结果:

2016年最具实力的公司

内德班克拍卖会上创纪录的葡萄酒价格

这是我的功能:

<SPAN CLASS="KEYWORDSEARCHTERM"> </SPAN>
var newHeaderString;
var printArrayWithExtract;
var summaryText;

this.setPrintItems = function(printArray) {
  
  angular.forEach(printArray, function(printItem){

    if (printItem.ArticleText === null) {
      summaryText = '';
    }
    else {
      summaryText =  '... ' + printItem.ArticleText.substring(50, 210) + '...';
    }

// Code to replace the HTML markup in printItem.header
// and return newHeaderString

    printArrayWithExtract.push(
      {
        ArticleText: printItem.ArticleText,
        Summary: summaryText,
        Circulation: printItem.Circulation,
        Headline: newHeaderString,
      }
    );

  });

  return printArrayWithExtract;

};

可以使用正则表达式执行此操作,请参见以下内容:

var s1=“2016年最具实力的公司”;
var s2=‘NEDBANK拍卖会上创纪录的葡萄酒价格’;
函数removeSpanInText(个){
返回s.replace(/]*>/gi,“”);
}
$(“#x1”).text(removeSpanInText(s1));
$(“#x2”).text(removeSpanInText(s2))

1 ->

2->
试试这个功能。它将删除所有标记标记

function strip(html)
{
   var tmp = document.createElement("DIV");
   tmp.innerHTML = html;
   return tmp.textContent || tmp.innerText || "";
}
调用此函数以字符串形式发送html。比如说,

var str = '<SPAN CLASS="KEYWORDSEARCHTERM">MOST EMPOWERED</SPAN> COMPANIES 2016';
var expectedText = strip(str);
var str=“2016年最具实力的公司”;
var expectedText=条带(str);

您可以在这里找到预期的文本。

我使用了这个小替换功能:

 if (printItem.Headline === null) {
            headlineText = '';
        }
        else {
            var str = printItem.Headline;
            var rem1 = str.replace('<SPAN CLASS="KEYWORDSEARCHTERM">', '');
            var rem2 = rem1.replace('</SPAN>', '');
            var newHeaderString = rem2;
        }
if(printItem.Headline==null){
headlineext='';
}
否则{
var str=printItem.Headline;
var rem1=str.replace(“”,”);
var rem2=rem1.替换(“”,”);
var newHeaderString=rem2;
}