用Regex解析特定的CSS
本文关键字:CSS Regex | 更新日期: 2023-09-27 18:02:30
我正在努力想出正确的正则表达式来解决我的问题。我需要从这个Sass文件中解析变量及其值。变量总是以$开头,以:结尾,它们的值在:之后开始,以;结尾,很像CSS。
我正在使用。net的正则表达式解析器,并对这个有用的正则表达式工具进行测试:http://derekslager.com/blog/posts/2007/09/a-better-dotnet-regular-expression-tester.ashx
我能够找到变量与这个匹配字符串
'$['w'd-]*:
然而,我如何才能找到匹配的值对,而不是从其他css中拾取误报,如"10px"
/*
Theme Name: Huff
*/
// Particle Imports
@import "blueprint";
// Blueprint Variables
$blueprint_grid_margin: 10px;
// Site Specific Styles
$primary-color: #a1bfc2;
$link-color: #AFBDD2;
html {
font-smooth: always;
}
body.bp {
@include ui;
overflow-x: hidden;
background-color: $secondary-color;
}
你想使用这样的组
'$(['w'd-]*):'s*(.*)?'s*;
然后匹配所有,组1有名称,组2有每个匹配的值。
尝试:
('$['w'd-]*):'s*([^;]+);
$1包含变量名,$2包含变量值。该值将包括任何引号,空格等,但不包括直接在":"后面修剪的空白。