recording data between [ and ]

rbt rbt at athop1.ath.vt.edu
Thu Apr 21 10:19:22 EDT 2005


Peter Hansen wrote:
> rbt wrote:
> 
>> Output from 'netstat -b' on a win2003 server will show what binary is 
>> responsible for the connection. For example, it may list something 
>> like this along with other connection specific data:
>>
>> [lsass.exe]
>> [System]
>> [firefox.exe]
>> [iexplorer.exe]
>>
>> How might I process the output so that anything within brackets is 
>> recorded to a log file of my own making? I know how to parse and 
>> record things to a file, I don't know how to look make '[' and ']' 
>> appear as special characters so that I can record what's between them.
> 
> 
> Does this help?
> 
>  >>> import re
>  >>>
>  >>> s = '''stuff   [lsass.exe]
> ... [System]  more stuff
> ... xxxxx [firefox.exe] ......
> ... '''
>  >>>
>  >>> re.findall(r'\[([^]]*)\]', s)
> ['lsass.exe', 'System', 'firefox.exe']
> 
> -Peter

Yes, it does... may take me a few minutes to get my head around it 
though. Why do re's have to be so arcane and complicated... especially 
in Python?

It's hard to preach 'ease of use' with stuff such as this in the 
language. Perhaps one day it can be rolled up into something that 
*really* is easy to understand:

import string

fp = file('filename')
data = fp.read()
fp.close()

string.between(data,[,])



More information about the Python-list mailing list