繁体   English   中英

"正则表达式解析css"

[英]Regular expression to parse css

我希望我能找到你。

我意识到适合所有 css 的通用正则表达式不会在所有情况下都适用,但是我正在解析一段特定的 css,因此我可以调整这个表达式以满足我的需要。

在搜索了 SO 之后,我确实找到了一些非常有用的正则表达式,我已经将它们组合成以下内容并取得了巨大的成功:

parsed_css = re.findall(r'([\[\]=\"\#\.\w\-\,\s\n\r\t:@*]+)(\{[^\{\}].*?\})', css, re.DOTALL)

你可以使用pyparsing<\/a>来解析这样的嵌套括号。

import pyparsing as pp

string = '@keyframes mymove {from {top: 0px;} to {top: 200px;}}'
pattern = pp.Regex(r'^.*?(?= \{)') + pp.original_text_for(pp.nested_expr('{', '}'))
selector, rules = pattern.parse_string(string)

# Tests
assert selector == '@keyframes mymove'
assert rules == '{from {top: 0px;} to {top: 200px;}}'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM