Is there lightweight lexer for Ruby? I have seen a few lexer
generators out there, but I want something simple that can be used
without generating the lexer first. I really just need the basic
functionaliy of matching a pattern and associating an action with that
pattern. For example, I was thinking something like:
    class MyLexer < Lexer
       rule /a/ do
          # action for pattern a
       end
       rule /b/ do
          # action for pattern b
       end
       rule /c/ do
          # action for pattern c
       end
    end

    l = MyLexer.new(input_stream)
    l.each_token do |token|
       # do something with token
    end

I have something similar to the above that I have created. However, I
wanted to check and see what is out there first before I invested too
much time in it. If no one knows of anything else and\or is interested
in what I have described let me know and I will clean it up and
publish it.

--Meador