富文本正则匹配字体样式替换:
/font-family\s*?:(([^";<>]*?"[^";<>]*?")|(\s*[^";<>\s]*))*;?/g
可变其他样式,把属性名替换掉就行!
小记:思考个问题,正文里面有属性名的字段也给替换掉了,有好的解决思路没有呢?
1.解决方案:
先匹配循环style字段,拿到样式值,再做替换。
匹配style的正则:
reg = /style="[^=>]*"/g
可以用replace方法
let str = '<p style="font-size:20px;color:#333">这是一段文字</p>'
str.replace(/style="[^=>]*"/g,function(match,course){
console.log(match,course)
//逻辑处理
})