I could make it that simple, but that is also incredibly slow and on a
file with several million lines, it takes somewhere in the league of
half an hour to grab all the data. I need this to grab data from many
many file and return the data quickly.
Brandon L. Harris
Andreas Tawn wrote:
I'm trying to read in and parse an ascii type file that contains
information that can span several lines.
Example:
createNode animCurveTU -n "test:master_globalSmooth";
setAttr ".tan" 9;
setAttr -s 4 ".ktv[0:3]" 101 0 163 0 169 0 201 0;
setAttr -s 4 ".kit[3]" 10;
setAttr -s 4 ".kot[3]" 10;
createNode animCurveTU -n "test:master_res";
setAttr ".tan" 9;
setAttr ".ktv[0]" 103 0;
setAttr ".kot[0]" 5;
createNode animCurveTU -n "test:master_faceRig";
setAttr ".tan" 9;
setAttr ".ktv[0]" 103 0;
setAttr ".kot[0]" 5;
I'm wanting to grab the information out in chunks, so
createNode animCurveTU -n "test:master_faceRig";
setAttr ".tan" 9;
setAttr ".ktv[0]" 103 0;
setAttr ".kot[0]" 5;
would be what my regex would grab.
I'm currently only able to grab out the first line and part of the
second line, but no more.
regex is as follows
my_regexp =e.compile("createNode\ animCurve.*\n[\t*setAttr.*\n]*")
I've run several variations of this, but none return me all of the
expected information.
Is there something special that needs to be done to have the regexp
grab
any number of the setAttr lines without specification?
Brandon L. Harris
Aren't you making life too complicated for yourself?
blocks =]
for line in yourFile:
if line.startswith("createNode"):
if currentBlock:
blocks.append(currentBlock)
currentBlock =line]
else:
currentBlock.append(line)
blocks.append(currentBlock)
Cheers,
Drea
--
http://mail.python.org/mailman/listinfo/python-list