来个大佬 看下这个正则匹配?

我有如下 字符串

const str = `<div id="name">
    <template>
          <template>77777</template>99999
    </template>
</div>`

想替换成

<div id="name">
    <template>77777</template>99999
</div>

也就是说 替换 第一个 <template> 为空,最后一个 </template> 为空

阅读 2.2k
2 个回答
str.replace(/<template>([\s\S]*)<\/template>/, '$1');
str.replace(/<template>([\s\S]*)<\/template>/, function(match,g1){
    return /<template>/i.test(g1)?g1:match;
});
推荐问题