From: Dondi Date: 2008-02-02T23:59:56+09:00 Subject: Extracting vowels and consonants using regular expression I am trying to parse a string and extract all vowels and consonants into two separate substrings. However, I can't get my solution to work. Any pointers are appreciated. Here is the approach I am using: 1) Extended the String Class with the following methods: class String def vowels self.scan(/[aeiou]|(?![aeiou])y(?![aeiou])/i) end def consonants self.scan(/![aeiou]|(?=[aeiou])y(?=[aeiou])/i) end end 2) Invoke the methods: test_paragraph = "Mary had a little lamb" @vowel_sub_str = test_paragraph.vowels @consonant_sub_str = test_paragraph.consonants However, the result is just two empty strings. I believe the problem is in the regular expression, but I can't figure out just where. Any ideas/pointers are appreciated. Thanks.