[Tutor] Help with regular expression

syed zaidi syedzaidi85 at hotmail.co.uk
Mon Apr 16 06:59:19 CEST 2012



Thanks for the help
I need the whole line starting from 'D' but in seperate columns.like KO, EC, Gene ID, Enzyme Name etc

> Date: Mon, 16 Apr 2012 00:24:17 +1000
> From: steve at pearwood.info
> To: tutor at python.org
> Subject: Re: [Tutor] Help with regular expression
> 
> syed zaidi wrote:
> > Dear Steve,Tutor doesn't allow attachment of huge files. I am attaching
> > the files I am taking as input, code and the output CSV file. I hope then
> > you would be able to help me. DOT keg files open in file viewer, you can
> > also view them in python. The CSV file is the desired output file.
> 
> 
> There is no need to send four files when one will do. Also no need to send a 
> file with multiple thousands of lines long when a dozen or so lines should be 
> sufficient.
> 
> It would also help if you told us what the fields in the file should be 
> called. You are probably familiar with them, but we aren't.
> 
> Since I don't know what the fields are called, I'm going to just make up some 
> names.
> 
> def parse_d_line(line):
>      # Expects a line like this:
>      # D    SBG_0147 aceE; xxx xxx\tK00163 xxx xxx [EC:1.2.4.1]
>      a, b = line.split('\t')  # split on tab character
>      c, d = a.split(';')
>      letter, sbg_code, other_code = c.split()
>      compound1 = d.strip()
>      words = b.split()
>      k_code = words[0]
>      ec = words[-1]
>      compound2 = " ".join(words[1:-1])
>      return (letter, sbg_code, other_code, compound1, k_code, compound2, ec)
> 
> 
> kegfile = open('something.keg')
> # skip lines until a bare exclamation mark
> for line in kegfile:
>      if line.strip() == '!':
>          break
> 
> # analyse D lines only, skipping all others
> for line in kegfile:
>      if line.startswith('D'):
>          print(parse_d_line(dline))
>      elif line.strip() == '!':
>          break  # stop processing
> 
> 
> You will notice I don't use regular expressions in this.
> 
>      Some people, when confronted with a problem, think "I know,
>      I'll use regular expressions." Now they have two problems.
>      -- Jamie Zawinski
> 
> 
> 
> 
> -- 
> Steven
> 
> _______________________________________________
> Tutor maillist  -  Tutor at python.org
> To unsubscribe or change subscription options:
> http://mail.python.org/mailman/listinfo/tutor
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20120416/3c88a30d/attachment.html>


More information about the Tutor mailing list