javascript - 如何在正则替换时,对匹配部分进行算术运算?
本文介绍了javascript - 如何在正则替换时,对匹配部分进行算术运算?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
.banner{
min-height: 164px;
img{
width:100%;
}
}
div.search{
width:100%;
height:45px;
padding:5px 15px 0;
div.col-xs-9{
padding-right: 0
}
我想在sublime中把所有px转化为rem,这时就需要把原来所有像素前面的数字都除以100,比如164px变成1.64rem;45px变成0.45rem;想利用ctrl+h直接进行正则替换,但却不知道怎么在正则中进行算术运算?
以下是我的尝试
这样肯定是不行的,比如164px会替换为164/100rem
请问Replace Witch部分怎么写?还是说正则无法进行算术运算??那这个问题有什么解决办法呢?
解决方案
我一般这么干,打开CHROME 控制台 → Source → Snippets(左边)
新建一个snippets,输入以下代码:
`
.banner{
min-height: 164px;
img{
width:100%;
}
}
div.search{
width:100%;
height:45px;
padding:5px 15px 0;
div.col-xs-9{
padding-right: 0
}
`.replace(/\d+px/g, function(match){
return parseInt(match) / 100 + 'rem'
})
ctrl+enter / 右键 run
如果你的chrome比较旧,就到elements写个<textarea id="code"></textarea>
,然后code.value.replace...
更多关于replace的用法看这里:JavaScript replace(RegExp, Function)详解
这篇关于javascript - 如何在正则替换时,对匹配部分进行算术运算?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文