Martel based parser to read NBRF formatted files.
This is a huge regular regular expression for NBRF, built using the
'regular expressiona on steroids' capabilities of Martel.
|
sequence_types = map(Str, valid_sequence_dict.keys())
|
|
sequence_type = Group("sequence_type", Alt(* sequence_types))
|
|
name_line = Martel.Group("name_line", Str(">")+ sequence_type+...
|
|
comment_line = UntilEol("comment")+ AnyEol()
|
|
excluded_chars = ' *\n\r '
|
|
sequence_text = Group("sequence_text", Martel.Rep1(AnyBut(excl...
|
|
sequence_line = Group("sequence_line", sequence_text+ AnyEol())
|
|
sequence_final_line = Group("sequence_final_line", UntilSep("s...
|
|
sequence_block = Group("sequence_block", Rep(sequence_line))
|
|
nbrf_record = name_line+ comment_line+ sequence_block+ sequenc...
|