I have a Ruby script as follow. What I try to do is to find a pattern in
the string and report its position. I wonder how to get the position of
pattern in the string.
Thank you in advance,
Li
seq="5'aaaAAAAAACCCCCCCCTTTTTTTGGGGGGGGG-3'"
seq.upcase!# change to upper case
puts "old sequence:"
puts seq.gsub!(/[^A-Z]/,'')# extract the string
puts pattern if seq=~/AC/
#how to get the position of pattern in the string?
I have a Ruby script as follow. What I try to do is to find a pattern in
the string and report its position. I wonder how to get the position of
pattern in the string.
Thank you in advance,
Li
seq="5'aaaAAAAAACCCCCCCCTTTTTTTGGGGGGGGG-3'"
seq.upcase!# change to upper case
puts "old sequence:"
puts seq.gsub!(/[^A-Z]/,'')# extract the string
puts pattern if seq=~/AC/
#how to get the position of pattern in the string?
String=~ returns the position of the starting of the match, so
The size if seq is 33. What I try to do is starting position of "AC" in
the seq.
How do I calculate the position of it?
Thanks,
Li
You're so close.
seq="5'aaaAAAAAACCCCCCCCTTTTTTTGGGGGGGGG-3'"
seq.upcase!# change to upper case
puts "old sequence:"
puts seq.gsub!(/[^A-Z]/,'')# extract the string
puts position = seq=~/AC/ #The counting starts at zero. Or use the more simple but less powerfull
puts position = seq.index("AC")
Now I have a question: is it possible in Ruby to highlight or underscore
or use different font size for the found pattern?
That depends on how/where you output the data, obviously. If you're writing a
GUI app or a webpage you can, of course, go as crazy with the font as you
want to.
In terminal apps you don't have control about font size or face. Changing
color, inverting color or underlining is possible, but terminal dependant
(specifically I don't think the terminal in Windows handles ANSI escape
sequences). There probably are gems to abstract away the differences between
platforms, though.
HTH,
Sebastian
···
--
NP: Nevermore - I Am The Dog
Jabber: sepp2k@jabber.org
ICQ: 205544826
Now I have a question: is it possible in Ruby to highlight or underscore
or use different font size for the found pattern?
That depends on how/where you output the data, obviously. If you're
writing a
GUI app or a webpage you can, of course, go as crazy with the font as
you
want to.
In terminal apps you don't have control about font size or face.
Changing
color, inverting color or underlining is possible, but terminal
dependant
(specifically I don't think the terminal in Windows handles ANSI escape
sequences). There probably are gems to abstract away the differences
between
platforms, though.