【发布时间】:2023-04-10 09:03:01
【问题描述】:
我正在用 Python 开发一个简单的 CSS 解析器。现在我想从这个字符串中提取所有值:"1px solid rgb(255, 255, 255)"。现在我的模式(不起作用)是:"\S+[^rgb]+"。当我将它与字符串 "1px solid rgb(255, 255, 255)" 一起使用时,我得到以下信息:
...
>>> re.findall("\S+[^rgb]+", string)
("1px solid", "rgb(255, 255, 255)")
我希望它是
("1px", "solid", "rgb(255, 255, 255)")
附言
另外,有没有更好的方法来解析 CSS 声明?目前我的模式是"[\s]?(\S+)[\s]?:[\s]?(.+)[\s]?;"。解析"color: red;" 给了我:
("color", "red")
【问题讨论】: