I have a crufty old DNS provisioning system that I'm rewriting and I hope improving in python. (It's based on tinydns if you know what that is.)
The record formats are, in the worst case, like this: foo.[DOM]::[IP6::4361:6368:6574]:600:: What I would like to do is to split this string into a list like this: [ 'foo.[DOM]','','[IP6::4361:6368:6574]','600','' ] Colons are separators except when they're inside square brackets. I have been messing around with re.split() and re.findall() and haven't been able to come up with either a working separator pattern for split() or a working field pattern for findall(). I came pretty close with findall() but can't get it to reliably match the nothing between two adjacent colons not inside brackets. Any suggestions? I realize I could do it in a loop where I pick stuff off the front of the string, but yuck. This is in python 2.7.5. -- Regards, John Levine, jo...@iecc.com, Primary Perpetrator of "The Internet for Dummies", Please consider the environment before reading this e-mail. http://jl.ly -- http://mail.python.org/mailman/listinfo/python-list