Cannot extend class in Application Helper

Looking for some help with extending existing classes.

In a view I have <td><%=h bmevent.node %></td>. I need further processing on the output and added a helper:

module ApplicationHelper class String   def a     self[ /^[^\0]*/ ]   end end end

and <td><%=h bmevent.node.a %></td> results in an undefined method `a' for #<String:0xb6c8105c> error.

What am I doing wrong?

The helper is correctly found, since

module ApplicationHelper def b(text)   text[ /^[^\0]*/ ] end end

and <td><%=b bmevent.node.a %></td> produce the desired result, but this is (for other reasons) not what I want. I want to extend class string and use the postfix notation as in the first example.

Any ideas ?

Looking for some help with extending existing classes.

In a view I have <td><%=h bmevent.node %></td>. I need further processing on the output and added a helper:

module ApplicationHelper class String def a    self[ /^[^\0]*/ ] end end end

That does not extend the String class. It defines a new class
ApplicationHelper::String with an instance method a. I would have a method like that in a file somewhere in lib (eg lib/ my_extensions.rb) and require that from an initializer. You could
'fix' it by pulling that out of the ApplicationHelper module and
putting it at the bottom of the file but that's a bit horrible.

Fred

Case closed. Thanx. a lot.