我正在使用 Visual Studio。在 SCSS 代码中的整个应用程序中,我正在转换所有 px
至rem
通过函数来计算单位。
例如:
padding: 16px 32px 48px --> padding: rem(16) rem(32) rem(48)
其计算结果为 padding: 1rem 2rem 3rem
.
现在由于某种原因我需要转换所有 rem
单位返回px
单位。
为此,我想识别模式 rem(xyz)
并将其替换为 xyz px
.
示例:
.wrapper{
font-size: rem(40);
.content{
padding: rem(20) rem(10) rem(30);
}
}
.wrapper{
font-size: 40px;
.content{
padding: 20px 10px 30px;
}
}
请告诉我如何使用 Notepad++ 或 Visual Studio 中的查找和替换工具实现此目的。
rem\((.*?)\)
--> 该正则表达式标识模式。
我试图使用相同的捕获组并以这种方式替换它
\((.*?)\)px
,但没有成功。
最佳答案
只要找到,
rem\((\d+)\)
并替换为,
$1px
其中 rem
匹配文字 rem
且 \(
匹配文字 (
然后 (\d+)
捕获一个或多个数字并在 group1 中捕获,在用相同的数字替换匹配的文本时将使用该数字,最后 \)
匹配文字 )
在替换文本中,$1
表示在 group1 中捕获的文本,因此将匹配的文本替换为您想要的数字和 px
。
<强> Regex Demo
关于regex - 如何替换 Notepad++ /Visual Studio中的特定模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55732276/