Help in using grako for parsing
Hello, I am trying to parse a file which ahs the below content. I tried using the split function but that wasn't a good programming practice. I had to use it repeatedly to split the line and then read my data. I thought of doing it in a better way which is when I came across grako. But I have no idea whatsoever about the usage of grako in a script. It would be nice if any of you could help me understand the usage of grako. I need to extract the values beside the variables z, f and x. The numbers represent the request ID, virtualNode ID and physical nodeID for x and it varies a bit for f, Thanks a lot z_0 1.00 x_0_0_1 1.00 x_0_1_5 1.00 x_0_2_20 1.00 x_0_3_21 1.00 x_0_4_8 1.00 f_0_0(0,1)_(1,5) 1.00 f_0_1(1,2)_(5,9) 1.00 f_0_1(1,2)_(9,20)1.00 f_0_2(2,3)_(2,21)1.00 f_0_2(3,2)_(2,22)1.00 f_0_2(2,3)_(20,22) 1.00 f_0_3(4,3)_(8,10)1.00 f_0_3(3,4)_(0,10)1.00 f_0_3(4,3)_(0,14)1.00 f_0_3(4,3)_(14,21) 1.00 z_1 1.00 x_1_0_16 1.00 x_1_1_6 1.00 x_1_2_13 1.00 x_1_3_0 1.00 x_1_4_25 1.00 x_1_5_15 1.00 x_1_6_19 1.00 f_1_0(1,0)_(6,16)1.00 f_1_1(0,2)_(6,11)1.00 f_1_1(0,2)_(11,13) 1.00 f_1_1(2,0)_(6,16)1.00 f_1_2(3,1)_(0,6) 1.00 f_1_3(2,4)_(13,25) 1.00 f_1_4(5,4)_(15,25) 1.00 f_1_5(3,6)_(0,1) 1.00 f_1_5(3,6)_(1,18)1.00 f_1_5(3,6)_(18,19) 1.00 -- https://mail.python.org/mailman/listinfo/python-list
Re: Help in using grako for parsing
varun...@gmail.com wrote: Hello, I am trying to parse a file which ahs the below content. I tried using the split function but that wasn't a good programming practice. I had to use it repeatedly to split the line and then read my data. I thought of doing it in a better way which is when I came across grako. But I have no idea whatsoever about the usage of grako in a script. It would be nice if any of you could help me understand the usage of grako. I need to extract the values beside the variables z, f and x. The numbers represent the request ID, virtualNode ID and physical nodeID for x and it varies a bit for f, We know Python, but not necessarily any terminology you throw at us. I didn't respond to your previous post because I had no idea what a .sol file is and what you're up to. As far as I can see no-one did. Now you make it even harder to help you by forcing us to look up grako to not (sic!) understand your question... You give sample input below. Perhaps you'll get more/better feedback if you provide a sample of the output you need, too, together with a more elaborate and accessible explanation of how you think you could get there. z_0 1.00 x_0_0_1 1.00 x_0_1_5 1.00 x_0_2_20 1.00 x_0_3_21 1.00 x_0_4_8 1.00 f_0_0(0,1)_(1,5) 1.00 f_0_1(1,2)_(5,9) 1.00 f_0_1(1,2)_(9,20)1.00 f_0_2(2,3)_(2,21)1.00 f_0_2(3,2)_(2,22)1.00 f_0_2(2,3)_(20,22) 1.00 f_0_3(4,3)_(8,10)1.00 f_0_3(3,4)_(0,10)1.00 f_0_3(4,3)_(0,14)1.00 f_0_3(4,3)_(14,21) 1.00 z_1 1.00 x_1_0_16 1.00 x_1_1_6 1.00 x_1_2_13 1.00 x_1_3_0 1.00 x_1_4_25 1.00 x_1_5_15 1.00 x_1_6_19 1.00 f_1_0(1,0)_(6,16)1.00 f_1_1(0,2)_(6,11)1.00 f_1_1(0,2)_(11,13) 1.00 f_1_1(2,0)_(6,16)1.00 f_1_2(3,1)_(0,6) 1.00 f_1_3(2,4)_(13,25) 1.00 f_1_4(5,4)_(15,25) 1.00 f_1_5(3,6)_(0,1) 1.00 f_1_5(3,6)_(1,18)1.00 f_1_5(3,6)_(18,19) 1.00 -- https://mail.python.org/mailman/listinfo/python-list
Re: Help in using grako for parsing
I'm really sorry for not being clear. I shall explain things in detail from now onwards. Really sorry. The output I would like is RF schema=RF.xsd version= VNE requests request ID='0' virtualnodes virtualnode PhysicalNode_ID='1' Request_ID='0' VirtualNode_ID='0'/virtualnode PhysicalNode_ID='5' Request_ID='0' VirtualNode_ID='1'/virtualnode PhysicalNode_ID='20' Request_ID='0' VirtualNode_ID='2'/virtualnode PhysicalNode_ID='21' Request_ID='0' VirtualNode_ID='3'/virtualnode PhysicalNode_ID='8' Request_ID='0' VirtualNode_ID='4'//virtualnodes virtualedges virtualedge PhysicalEdgeHead_ID='5' PhysicalEdgeTail_ID='1' Request_ID='0' VirtualEdgeHead_ID='1' VirtualEdgeTail_ID='0'/virtualedge PhysicalEdgeHead_ID='9' PhysicalEdgeTail_ID='5' Request_ID='0' VirtualEdgeHead_ID='2' VirtualEdgeTail_ID='1'/virtualedge PhysicalEdgeHead_ID='20' PhysicalEdgeTail_ID='9' Request_ID='0' VirtualEdgeHead_ID='2' VirtualEdgeTail_ID='1'/virtualedge PhysicalEdgeHead_ID='21' PhysicalEdgeTail_ID='2' Request_ID='0' VirtualEdgeHead_ID='3' VirtualEdgeTail_ID='2'/virtualedge PhysicalEdgeHead_ID='22' PhysicalEdgeTail_ID='2' Request_ID='0' VirtualEdgeHead_ID='2' VirtualEdgeTail_ID='3'/virtualedge PhysicalEdgeHead_ID='22' PhysicalEdgeTail_ID='20' Request_ID='0' VirtualEdgeHead_ID='3' VirtualEdgeTail_ID='2'/virtualedge PhysicalEdgeHead_ID='10' PhysicalEdgeTail_ID='8' Request_ID='0' VirtualEdgeHead_ID='3' VirtualEdgeTail_ID='4'/virtualedge PhysicalEdgeHead_ID='10' PhysicalEdgeTail_ID= '0' Request_ID='0' VirtualEdgeHead_ID='4' VirtualEdgeTail_ID='3'/virtualedge PhysicalEdgeHead_ID='14' PhysicalEdgeTail_ID='0' Request_ID='0' VirtualEdgeHead_ID='3' VirtualEdgeTail_ID='4'/virtualedge PhysicalEdgeHead_ID='21' PhysicalEdgeTail_ID='14' Request_ID='0' VirtualEdgeHead_ID='3' VirtualEdgeTail_ID='4'//virtualedges In a similar way I have something like this for every request. This is what I intend to get from the input that I had pasted earlier. -- https://mail.python.org/mailman/listinfo/python-list
Re: Help in using grako for parsing
Oh damn, it turned out really crappy. I could not format it properly -- https://mail.python.org/mailman/listinfo/python-list