正则表达式实现替换富文本中的某个内容

2021-04-22  本文已影响0人  变量只提升声明不提升赋值
this.html.replace(/\<img/gi, '<img style="max-width:100%;display:block" ')


全能替换
function replace_Rich_text (html) {
    let newContent = html.replace(/<img[^>]*>/gi, function(match, capture) {
        match = match.replace(/style\s*?=\s*?([‘"])[\s\S]*?\1/, '').replace(/\style='[^']+'/gi, '');
        match = match.replace(/width="[^"]+"/gi, '').replace(/width='[^']+'/gi, '');
        match = match.replace(/height="[^"]+"/gi, '').replace(/height='[^']+'/gi, '');
        return match;
    });
    newContent = newContent.replace(/style="[^"]+"/gi, function(match, capture) {
        match = match.replace(/width:[^;]+;/gi, 'max-width:100%;').replace(/width:[^;]+;/gi,
            'max-width:100%;');
        return match;
    });
    newContent = newContent.replace(/<br[^>]*\/>/gi, '');
    newContent = newContent.replace(/\<img/gi,
        '< img style="max-width:100%;height:auto;display:block;margin-top:0;margin-bottom:0;"');
    return newContent;
}
通过字符串replace方法,第一个参数是正则表达式,找到想要替换的字符,第二个参数传入替换的内容
上一篇 下一篇

猜你喜欢

热点阅读