在python中解析Parse格式字符串

时间:2017-04-18 19:38:16

标签: python string parsing

我试图在python中解析一个字符串,并且一直在使用PyPi(https://pypi.python.org/pypi/parse)中的Parse来完成我的所有解析。

但是,我现在需要解析Parse库用于解析格式的字符串。

例如,字符串:

{time:ti}|{dogColor:w}|{dogAge:d}|{startaddress:w}|

我使用类似的格式(不是关于狗)来解析日志文件。但是,我想解析这个字符串,以便找到每个单独项目的类型(解析字符串以便在知道它是时间对象之后找到'ti',或者'dogColor'之后的'w'知道这是一个字符串)

首先,我用“|”拆分线字符,结果是:

{time:ti}

从这里我想解析结肠的每一面,而不是包括花括号。我试过这个无济于事:

result = parse('{{name}}:{type}', token)

我认为我遇到的问题是Parse库无法解析花括号,因为它是一个特殊字符?我试过逃脱字符无济于事:

result = parse("/{{name}/}:{type}", token)

有什么建议吗?没有Parse库,是否有更好的方法可以做到这一点?

1 个答案:

答案 0 :(得分:2)

双花括号以逃脱它们:

>>> parse('{{{}:{}}}', '{time:ti}')
<Result ('time', 'ti') {}>