一个简单的解析框架

gobble的Python项目详细描述


https://travis-ci.org/prophile/gobble.svg

python中更简单的解析。

用法

fromgobbleimport*

基本分析器:

@parserdefnatural():digits=yieldcharacter('0123456789').starreturnint(''.join(digits))

备选方案:

@parserdefliteral_null():yieldliteral('NULL')returnNoneliteral=natural/literal_null

可选元素:

@parserdefnatural():sign=yieldcharacter('-+').option('+')factor={'-':-1,'+':1}[sign]value=yieldnaturalreturnvalue*factor

使用运算符排序:

whitespace=character(' \n\r\t').starliteral_expr=literal<<whitespace

实际运行解析器:

value=literal_expr.execute(input_string)print(value)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
创建大十进制对象时发生java错误   java为什么netty日志不显示正确的类和包信息   java AWS Lambda,如何正确实例化AmazonHttpClient?   java如何防止控制器中的Put API受到CheckMarx扫描中反映的XSS攻击?   java如何在Android上滚动时更改图像   java为什么通知没有显示在API 28中?   java分配问题OCJP;为什么我不能将int传递给short?   java在非静态内部类中使用泛型   正则表达式从Java字符串中提取word中指定的日期值   java Primefaces selectManyCheckbox未在bean中填充   美化javaxml输出   java带2个箭头的按位移位和带3个箭头的按位移位有什么区别?   使用JAXB和SpringMVC进行java XML绑定   Java高级功能weblogic中的Web服务   java IIN插入HQL中   缺少java PrintCommandListener   java如何模拟SpringBean的自动连接列表?   javasocket服务器、客户端检测服务器已死亡   将按钮添加到使用java图形的contentPane   java EJB3在第一次运行时调用计时器超时时出错