[#4766] Wiki — "Glen Stampoultzis" <trinexus@...>

21 messages 2000/09/04
[#4768] RE: Wiki — "NAKAMURA, Hiroshi" <nahi@...> 2000/09/04

Hi, Glen,

[#4783] Re: Wiki — Masatoshi SEKI <m_seki@...> 2000/09/04

[#4785] Re: Wiki — "NAKAMURA, Hiroshi" <nakahiro@...> 2000/09/05

Howdy,

[#4883] Re-binding a block — Dave Thomas <Dave@...>

16 messages 2000/09/12

[#4930] Perl 6 rumblings -- RFC 225 (v1) Data: Superpositions — Conrad Schneiker <schneik@...>

Hi,

11 messages 2000/09/15

[#4936] Ruby Book Eng. translation editor's questions — Jon Babcock <jon@...>

20 messages 2000/09/16

[#5045] Proposal: Add constants to Math — Robert Feldt <feldt@...>

15 messages 2000/09/21

[#5077] Crazy idea? infix method calls — hal9000@...

This is a generalization of the "in" operator idea which I

17 messages 2000/09/22

[#5157] Compile Problem with 1.6.1 — Scott Billings <aerogems@...>

When I try to compile Ruby 1.6.1, I get the following error:

15 messages 2000/09/27

[ruby-talk:4812] Re: Piping in Ruby?

From: Dave Thomas <Dave@...>
Date: 2000-09-06 19:00:30 UTC
List: ruby-talk #4812
schneik@us.ibm.com writes:

>     p list.collect { |i| i.sub(/.*/, "1_#{$&}_1") }

You can't use the $& form in a string parameter to sub, because the
parameters are evaluated _before_ the body of the method is
executed. You have to use \& instead


      def x(list)
          p list

          p list.collect { |i| i.sub(/(.*)/, '1_\&_1') }

          p list.collect { |i| i.sub(/.*/, '1_\&_1') } .
                 collect { |i| i.sub(/.*/, '2_\&_2') }

          print "\n"
      end

      x( %w(a) )
      x( %w(a b c d) )

=>
     ["a"]
     ["1_a_1"]
     ["2_1_a_1_2"]

     ["a", "b", "c", "d"]
     ["1_a_1", "1_b_1", "1_c_1", "1_d_1"]
     ["2_1_a_1_2", "2_1_b_1_2", "2_1_c_1_2", "2_1_d_1_2"]


Regards


Dave

In This Thread

Prev Next