首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JS -从字符串中删除每个关闭的html标记

JS -从字符串中删除每个关闭的html标记
EN

Stack Overflow用户
提问于 2013-09-08 01:42:34
回答 3查看 78关注 0票数 1

我有这样的字符串:

代码语言:javascript
复制
var string = '<div class="post-content"></div><div class="post"></div><div id="content" class="col-lg-12"></div><div class="row"></div><div id="container" class="container"></div><body class="page page-id-157 page-template page-template-page-fullwidth-no-sidebar-php logged-in admin-bar  customize-support" style="">';

我想要删除其中的所有结束标记。它可能是div,也可能不是。

我尝试过string.replace(/<\/\S+>$/, '');,但它似乎只有在只有一个标签时才起作用。更糟的是,它根本不起作用

Fiddle here

EN

回答 3

Stack Overflow用户

发布于 2013-09-08 01:44:45

您缺少全局修饰符(查找所有匹配项,而不是只查找第一个匹配项),您还应该将其设置为非贪婪(在\S+之后添加一个? )。另外,删除只与字符串末尾匹配的$

代码语言:javascript
复制
string.replace(/<\/\S+?>/g, '');

还要注意,这将删除像</div>这样的标记,但不会删除</ div>,因为您不允许使用空格。

票数 3
EN

Stack Overflow用户

发布于 2013-09-08 01:44:08

代码语言:javascript
复制
string.replace(/<\/\S+>/g, '');

斜杠后面的"g“表示全局,这表示替换regexp的所有实例,而不是第一个实例。

此外,$意味着它只匹配表达式的最后一个实例。删除它应该会得到你想要的东西。

票数 2
EN

Stack Overflow用户

发布于 2013-09-08 01:48:39

是的,请不要在以下位置使用$

代码语言:javascript
复制
/<\/\S+>$/

fiddle

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18676117

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档