js replace替换字符串,同时替换多个方法
程序员文章站
2022-07-05 14:26:58
宅是一种信仰。
Wi-Fi + 床 = 低配宅。
Wi-Fi + 床 + 零食 + 网综= 进阶版肥宅。
Wi-Fi + 床 + 零食 + ......
在实际开发中,经常会遇到替换字符串的情况,但是大多数情况都是用replace替换一种字符串,本文介绍了如何使用replace替换多种指定的字符串,同时支持可拓展增加字符串关键字。
let content = `<div id="article_content273475" class="article-content-wrap">
<p><strong>宅是一种信仰。</strong><br></p>
<p><br></p>
<p>wi-fi + 床 = 低配宅。</p>
<p><br></p>
<p>wi-fi + 床 + 零食 + 网综= 进阶版肥宅。</p>
<p><br></p>
<p>wi-fi + 床 + 零食 + 网综 + 外卖 + 撸猫 = 人间天堂金不换宅。</p>
<p><br></p>
<p>移动互联网迅猛发展的当下,“人间天堂金不换”版宅可以说是当下一些“9000岁”<span class="text-remarks" label="备注">(即“90后”和“00后”)</span>年轻人的生活常态了。</p>
</div>`;
let article = content.replace(/(\<img|\<p|\<article|\<\/article|\<header|\<\/header)/gi, function ($0, $1) { return { "<img": '<img style="width:100%;height:auto;display:block;" ', "<p": '<p style="text-indent: 24px;" ', "<article":"<div", "</article": "</div", "<header": "<div", "</header": "</div" }[$1]; }); console.log(article)
replace里的g表示全局替换,而每个关键词前面的\则为转义字符,在针对html类的标签替换的时候,是必不可少的。