Search code examples
pythonpyparsing

Escaping white spaces in nestedExpr pyparsing


import pyparsing as pp
print(pp.nestedExpr(opener="(", closer=")").parseString("(account={eq:T 1 No Lim})", parseAll=True)[0])

Above code gives me below output:

['account={eq:T', '1', 'No', 'Lim}']

But I want to escape white spaces from value part and want below output:

[u'account={eq:T 1 No Lim}']

Can anyone please suggest ?


Solution

  • Maybe you can make use of originalTextFor.

    For example:

    import pyparsing as pp
    print(pp.originalTextFor(pp.nestedExpr(opener="(", closer=")")).parseString("(account={eq:T 1 No Lim})", parseAll=True)[0])