我有一个* .css(层叠样式表)格式的文档,但它有自己的关键字.实际上它是一个个性化的CSS(我称之为* .pss),具有自己的标签和属性.我在这里摘录:
/* CSS like style sheet file *.pss */ @include "otherStyleSheet.pss"; /* comment */ [propertyID="1230000"] { fillColor : #f3f1ed; minSize : 5; lineWidth : 3; } /* sphere */ [propertyID="124???|123000"] { lineType : dotted; } /* square */ [propertyID="125???"] { lineType : thinline; } /* ring */ [propertyID="133???"] { lineType : thickline; [hasInnerRing=true] { innerLineType : thinline; } }
我想非常轻松地解析它,Qt已经有了一些可以使用的东西吗?什么是最简单的方法?
由于* .css有自己的关键字,我不会在CSS解析器中使用.
解决方法
我知道两种可能性:
> boost::spirit和here你可以找到对boost :: spirit解析器框架的一个很好的介绍
>我建议你自己编写recursive descent parser
由于这个事实,你的个性化* .pss并不像CSS那样复杂(简单的包围等),我建议2.