我有一个像这样的CSS字符串
#xyz{
color:#ee2ee2;
}
.abc{
background-color:#FFFFFF;
border-color:1px solid #eee;
}
.def #xyz{
border-color:1px solid #ddd;
}
我需要更换#xyz
(或任何其他 ID 选择器).xyz
不改变color: #ee2ee2
(或任何其他颜色选择器)。
基本的java脚本代码就可以了
我尝试过一些正则表达式,但在一些情况下失败了
cssText.replace(/#([a-zA-Z])/gm, '.$1');
这将取代#
with .
仅当有一个{
在同一行之后的某个地方。
cssText = `
#xyz
{
color:#ee2ee2;
}
.abc{
background-color:#FFFFFF;
border-color:1px solid #eee;
}
.def #xyz{
border-color:1px solid #ddd;
}
body{background-color:#fff000;}.ig26{padding:20px;}.icts{width:200px;height:200px;padding:10px;}
`;
console.log(cssText.replace(/#([a-zA-Z])(?=[^}]*{)/g, '.$1'));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)