当前位置: 首页 > 知识库问答 >
问题:

如何从字符串中删除只包含特定类名而不包含内部内容的html标记(span)?

子车桐
2023-03-14

我想从字符串中删除一些不需要的标记,以便将干净的字符串存储到数据库中。

我已经尝试将字符串与regex表达式联系起来。这是我尝试过的--https://codepen.io/rushijagani/pen/wzxwrj

var data = '<p><span class="unwanted-span-one" data-hello="unwated-attr">Donec</span> rutrum congue leo eget malesuada. <span>Mauris</span> blandit aliquet elit, eget <span class="unwanted-span-two" data-hello="unwated-attr-two"> malesuada</span>.</p>'

我想删除所有的span标记,它有一个以“unwanted-span-”开头的类名,它应该只删除标签包装而不是内容内部。

因此所需输出应如下所示

var data = '<p>Donec rutrum congue leo eget malesuada. <span>Mauris</span> blandit aliquet elit, eget malesuada.</p>'

请注意--我们只需要删除类名开头为“unwanted-span-”的span标记,其他span应该保持原样。

共有2个答案

颛孙嘉石
2023-03-14

您可以使用starts with运算符,如下所示:

var allData = $('.all').find("span[class^='unwanted-span']").css('color','blue');

我编辑您的代码接口容器https://codepen.io/anon/pen/qwyayp

若要删除,请使用以下命令:

var allData = $('.all').find("span[class^='unwanted-span']").remove(); 

要打开跨转文本,请使用以下命令:

var allData = $('.all').find('span[class^="unwanted-span-"]').contents().unwrap();

console.log($('.all').html());
蒋畅
2023-03-14

您可以简单地使用

var allData = $('*[class^="unwanted-span-"]').contents().unwrap();
console.log($(".all").html())

如果您不想更改HTML,可以这样做:

var match = $('*[class^="unwanted-span-"]').get(0);
var test = $('p').html().replace(match.outerHTML,match.innerHTML);
console.log( test );

当然,如果有多个匹配项,则必须对所有匹配项进行迭代:)

 类似资料:
  • 问题内容: 如何在C#中使用正则表达式删除所有HTML标记,包括&nbsp。我的弦看起来像 问题答案: 如果您不能使用面向HTML解析器的解决方案来过滤标签,则这里有一个简单的正则表达式。 理想情况下,您应该再次通过正则表达式过滤器,该过滤器将多个空格

  • 我有一个具有以下列名的熊猫数据框: 结果1、测试1、结果2、测试2、结果3、测试3等。。。 我想删除名称中包含单词“Test”的所有列。此类列的数量不是静态的,而是取决于以前的函数。 我该怎么做?

  • 问题内容: 我有一个带有以下列名称的pandas数据框: Result1,Test1,Result2,Test2,Result3,Test3等… 我要删除名称包含单词“ Test”的所有列。这样的列数不是静态的,而是取决于先前的功能。 我怎样才能做到这一点? 问题答案:

  • 问题内容: 所以我有以下格式的日志消息: 现在,我想删除所有不包含特定字符串“ xyz”的日志,并保留其余所有日志。我也想索引时间戳。 grokdebug没有太大帮助。 这是我的尝试: 我是新手,所以上面的模式可能没有意义。请帮忙。 问题答案: 要删除不包含字符串的消息: 您的骗子模式没有抓住日志的日期部分。 一旦在grok模式中有一个包含日期的字段,就可以在该字段上调用日期过滤器。 因此,您的g

  • 我能够通过使用下面这个问题的注释提供的代码来解决这个问题。所有其他帖子都是有效的! 我使用的有用的东西来自第一个评论。虽然提供的所有示例代码似乎也是有效的!

  • 问题内容: 考虑这个例子- 我有一个称为Report的类,该类具有Message类型的字段。Message类具有一个称为“ body”的字段,该字段是一个字符串。“ body”可以是任何字符串, 但有时包含格式正确的XML内容 。如何确保当“正文”包含XML内容时,序列化采用XML结构的形式而不是当前的结构? 这是带有输出的代码- 报告 类别 讯息 类别 主要 输出如下- 如您在上面的输出中看到的