[#10209] Market for XML Web stuff — Matt Sergeant <matt@...>

I'm trying to get a handle on what the size of the market for AxKit would be

15 messages 2001/02/01

[#10238] RFC: RubyVM (long) — Robert Feldt <feldt@...>

Hi,

20 messages 2001/02/01
[#10364] Re: RFC: RubyVM (long) — Mathieu Bouchard <matju@...> 2001/02/05

[#10708] Suggestion for threading model — Stephen White <spwhite@...>

I've been playing around with multi-threading. I notice that there are

11 messages 2001/02/11

[#10853] Re: RubyChangeRequest #U002: new proper name for Hash#indexes, Array#indexes — "Mike Wilson" <wmwilson01@...>

10 messages 2001/02/14

[#11037] to_s and << — "Brent Rowland" <tarod@...>

list = [1, 2.3, 'four', false]

15 messages 2001/02/18

[#11094] Re: Summary: RCR #U002 - proper new name fo r indexes — Aleksi Niemel<aleksi.niemela@...>

> On Mon, 19 Feb 2001, Yukihiro Matsumoto wrote:

12 messages 2001/02/19

[#11131] Re: Summary: RCR #U002 - proper new name fo r indexes — "Conrad Schneiker" <schneik@...>

Robert Feldt wrote:

10 messages 2001/02/19

[#11251] Programming Ruby is now online — Dave Thomas <Dave@...>

36 messages 2001/02/21

[#11469] XML-RPC and KDE — schuerig@... (Michael Schuerig)

23 messages 2001/02/24
[#11490] Re: XML-RPC and KDE — schuerig@... (Michael Schuerig) 2001/02/24

Michael Neumann <neumann@s-direktnet.de> wrote:

[#11491] Negative Reviews for Ruby and Programming Ruby — Jim Freeze <jim@...> 2001/02/24

Hi all:

[#11633] RCR: shortcut for instance variable initialization — Dave Thomas <Dave@...>

13 messages 2001/02/26

[#11652] RE: RCR: shortcut for instance variable initialization — Michael Davis <mdavis@...>

I like it!

14 messages 2001/02/27

[#11700] Starting Once Again — Ron Jeffries <ronjeffries@...>

OK, I'm starting again with Ruby. I'm just assuming that I've

31 messages 2001/02/27
[#11712] RE: Starting Once Again — "Aaron Hinni" <aaron@...> 2001/02/27

> 2. So far I think running under TextPad will be better than running

[#11726] Re: Starting Once Again — Aleksi Niemel<zak@...> 2001/02/28

On Wed, 28 Feb 2001, Aaron Hinni wrote:

[ruby-talk:10417] Recall Regexp options?

From: "Ben Tilly" <ben_tilly@...>
Date: 2001-02-06 12:08:20 UTC
List: ruby-talk #10417
Does this make sense to anyone?

  def test_match(str, re)
    puts "'#{str}' " + ((str =~ re) ? "matched" : "didn't match")
  end

  re1 = /hello world/
  re2 = /hello world/x
  if re1 == re2
    puts "The two expressions are equal?"
  end
  puts "Trying the first RE"
  test_match("hello world", re1)
  test_match("helloworld", re1)
  puts "Trying the second RE"
  test_match("hello world", re2)
  test_match("helloworld", re2)

They don't seem very equal to me!  Now all of this is
as documented.  However right now it is causing me
pain.  I would like to be able to take an arbitrary RE
as input and turn that into a tokenizer.  I will be
calling the index method on a string, so the obvious
approach is to grab the source of the RE, prepend \G to
it, then recompile with the same options and lang.

This doesn't work though because the only option that I
can grab is casefold? (for case insensitive).  Also I
need to translate from the kcode back to the option for
the lang.  Luckily calling to_s on it succeeds for the
latter.  So the following appears to be the best that
I can do:

  new_re = Regexp.new("\\G" + re.source, re.casefold?, re.kcode.to_s)

However if someone tries to use this with /m or /x
they will get unexpected results. :-(

Is there any possibility that REs could keep track of
what options they were compiled with, check that in
the == method, and make that available back to me?

Thanks,
Ben

PS Bug report for Programming Ruby.  On page 367 the
third optional constant you may use in the new method
is Regexp::MULTILINE, not Regexp::POSIXLINE.

PPS Coming from Perl I find it disconcerting to see
Ruby's /m flag combine options that I am used to seeing
separately as /s and /m.
_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com

In This Thread

Prev Next