> cond(a,b,c) > > and I want them to look like this: > > cond(c,a,b) > > but it gets a little more complicated because the conds themselves may > have conds within, like the following: > > cond(0,cond(c,cond(e,cond(g,h,(a<f)),(a<d)),(a<b)),(a<1))
Regexps are *really* *REALLY* *bad* at arbitrarily nested structures. really. Sounds more like you want something like a lex/yacc sort of solution. IIUC, pyparsing may do the trick for you. I'm not a pyparsing wonk, but I can hold my own when it comes to crazy regexps, and can tell you from experience that regexps are *not* a good path to try and go down for this problem. Many times, a regexp can be hammered into solving problems superior solutions than employing regexps. This case is not even one of those. If you know the maximum depth of nesting you'll encounter, you can do some hackish stunts to shoehorn regexps to solve the problem. But if they are truely of arbitrary nesting-depth, *good* *luck*! :) -tkc -- http://mail.python.org/mailman/listinfo/python-list