def each
while @entry[@i] and @entry[@i][0 ... 2] != "SQ"
- if @entry[@i] =~ /^FT\s{3}([A-Za-z_-]+)/
+ if @entry[@i] =~ /^FT\s{3}([53'A-Za-z_-]+)/
if want_feat? $1
record = {}
@j = @i + 1
- while @entry[@j] and @entry[@j][0 ... 2] == "FT" and @entry[@j] !~ /^FT(\s{19}\/|\s{3}[A-Za-z_-])/
+ while @entry[@j] and @entry[@j][0 ... 2] == "FT" and @entry[@j] !~ /^FT(\s{19}\/|\s{3}[53'A-Za-z_-])/
loc << @entry[@j].split(/\s+/, 2).last
@j += 1
end
quals = {}
k = 0
- while @entry[@j] and @entry[@j][0 ... 2] == "FT" and @entry[@j] !~ /^FT\s{3}[A-Za-z_-]/
+ while @entry[@j] and @entry[@j][0 ... 2] == "FT" and @entry[@j] !~ /^FT\s{3}[53'A-Za-z_-]/
if @entry[@j] =~ /^FT\s{19}\/([^=]+)="([^"]+)/
qual = $1
val = $2
if want_qual? qual
k = @j + 1
- while @entry[k] and @entry[k][0 ... 2] == "FT" and @entry[k] !~ /^FT(\s{19}\/|\s{3}[A-Za-z_-])/
+ while @entry[k] and @entry[k][0 ... 2] == "FT" and @entry[k] !~ /^FT(\s{19}\/|\s{3}[53'A-Za-z_-])/
val << @entry[k].split(/\s+/, 2).last.chomp('"')
k += 1
end
def each
while @entry[@i] and @entry[@i] !~ /^ORIGIN/
- if @entry[@i] =~ /^\s{5}([A-Za-z_-]+)/
+ if @entry[@i] =~ /^\s{5}([53'A-Za-z_-]+)/
if want_feat? $1
record = {}
@j = @i + 1
- while @entry[@j] and @entry[@j] !~ /^(\s{21}\/|\s{5}[A-Za-z_-]|[A-Z])/
+ while @entry[@j] and @entry[@j] !~ /^(\s{21}\/|\s{5}[53'A-Za-z_-]|[A-Z])/
loc << @entry[@j].lstrip
@j += 1
end
quals = {}
k = 0
- while @entry[@j] and @entry[@j] !~ /^\s{5}[A-Za-z_-]|^[A-Z]/
+ while @entry[@j] and @entry[@j] !~ /^\s{5}[53'A-Za-z_-]|^[A-Z]/
if @entry[@j] =~ /^\s{21}\/([^=]+)="([^"]+)/
qual = $1
val = $2
if want_qual? qual
k = @j + 1
- while @entry[k] and @entry[k] !~ /^(\s{21}\/|\s{5}[A-Za-z_-]|[A-Z])/
+ while @entry[k] and @entry[k] !~ /^(\s{21}\/|\s{5}[53'A-Za-z_-]|[A-Z])/
val << @entry[k].lstrip.chomp('"')
k += 1
end