推荐一个正则匹配的网站 https://regex101.com/文章来源地址https://www.toymoban.com/news/detail-604863.html
let str =
'有四只小动物排成一排,摄影师给相邻的两只小动物拍了下面三张照片。<img style="vertical-align: middle; width: 712px; height: 99.0337px;" width="1317" height="183" src="http://test.baidu.com/test.png" /><br />(<span class="brack"> </span>)排在最左边,(<span class="brack"> </span>)排在最右边。';
// 使用正则表达式匹配style中的width样式,并将大于375的部分替换为375px
let result = str.replace(
/(<img[^>]*style="[^"]*?)(\bwidth\s*:\s*\d+[^;"]*?px;)(\s?height\s*:\s*\d+[^;"]*?px;)([^<]*\/>)/gi,
function (match, p1, p2, p3, p4) {
console.log("🚀 ~ file: test.js:8 ~ p4:", p4);
console.log("🚀 ~ file: test.js:8 ~ p3:", p3);
console.log("🚀 ~ file: test.js:8 ~ p2:", p2);
console.log("🚀 ~ file: test.js:8 ~ p1:", p1);
console.log("🚀 ~ file: test.js:8 ~ match:", match);
let widthValue = parseInt(p2.match(/\d+/)[0]);
let heightValue = parseInt(p3.match(/\d+/)[0]);
if (widthValue > 375) {
return p1 + "width: 375px; height: auto;" + p4;
}
return match; // 如果width小于等于375,则不做替换,保持原样
}
);
console.log("🚀 ~ file: test.js:20 ~ result:", result);
文章来源:https://www.toymoban.com/news/detail-604863.html
到了这里,关于正则替换html img中的style width和height的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!