[#33000] [Ruby 1.9-Bug#4014][Open] Case-Sensitivity of Property Names Depends on Regexp Encoding — Run Paint Run Run <redmine@...>

Bug #4014: Case-Sensitivity of Property Names Depends on Regexp Encoding

11 messages 2010/11/01

[#33021] Re: [Ruby 1.9-Feature#4015][Open] File::DIRECT Constant for O_DIRECT — Yukihiro Matsumoto <matz@...>

Hi,

15 messages 2010/11/02

[#33139] [Ruby 1.9-Bug#4044][Open] Regex matching errors when using \W character class and /i option — Ben Hoskings <redmine@...>

Bug #4044: Regex matching errors when using \W character class and /i option

8 messages 2010/11/11

[#33162] Windows Unicode (chcp 65001) Generates incorrect output — Luis Lavena <luislavena@...>

Hello,

10 messages 2010/11/14

[#33246] [Ruby 1.9-Feature#4068][Open] Replace current standard Date/DateTime library with home_run — Jeremy Evans <redmine@...>

Feature #4068: Replace current standard Date/DateTime library with home_run

40 messages 2010/11/17

[#33255] [Ruby 1.9-Feature#4071][Open] support basic auth for Net::HTTP.get requests — "coderrr ." <redmine@...>

Feature #4071: support basic auth for Net::HTTP.get requests

23 messages 2010/11/19

[#33322] [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Shugo Maeda <redmine@...>

Feature #4085: Refinements and nested methods

94 messages 2010/11/24
[#33345] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Yusuke ENDOH <mame@...> 2010/11/25

Hi,

[#33356] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Shugo Maeda <shugo@...> 2010/11/25

Hi,

[#33375] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Yusuke ENDOH <mame@...> 2010/11/25

Hi,

[#33381] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Shugo Maeda <shugo@...> 2010/11/25

Hi,

[#33387] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Magnus Holm <judofyr@...> 2010/11/25

Woah, this is very nice stuff! Some comments/questions:

[#33487] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Charles Oliver Nutter <headius@...> 2010/11/30

This is a long response, and for that I apologize. I want to make sure

[#33535] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Yusuke ENDOH <mame@...> 2010/12/03

Hi,

[#33519] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Shugo Maeda <shugo@...> 2010/12/02

Hi,

[#33523] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Yusuke ENDOH <mame@...> 2010/12/02

Hi,

[#33539] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Shugo Maeda <shugo@...> 2010/12/03

Hi,

[#33543] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Yusuke ENDOH <mame@...> 2010/12/03

Hi,

[#33546] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Shugo Maeda <shugo@...> 2010/12/03

Hi,

[#33548] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Yusuke ENDOH <mame@...> 2010/12/03

Hi,

[#33567] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Shugo Maeda <shugo@...> 2010/12/04

Hi,

[#33595] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods — Charles Oliver Nutter <headius@...> 2010/12/06

On Sat, Dec 4, 2010 at 6:32 AM, Shugo Maeda <shugo@ruby-lang.org> wrote:

[#33367] Planning to release 1.8.7 fixes on 12/25 (Japanese timezone) — Urabe Shyouhei <shyouhei@...>

Hello,

20 messages 2010/11/25
[#33439] Re: Planning to release 1.8.7 fixes on 12/25 (Japanese timezone) — Luis Lavena <luislavena@...> 2010/11/27

2010/11/25 Urabe Shyouhei <shyouhei@ruby-lang.org>:

[#33456] [Request for Comment] avoid timer thread — SASADA Koichi <ko1@...>

Hi,

25 messages 2010/11/29
[#35152] Re: [Request for Comment] avoid timer thread — Mark Somerville <mark@...> 2011/02/08

On Mon, Nov 29, 2010 at 11:53:03AM +0900, SASADA Koichi wrote:

[#36077] Re: [Request for Comment] avoid timer thread — Mark Somerville <mark@...> 2011/05/09

On Tue, Feb 08, 2011 at 09:24:13PM +0900, Mark Somerville wrote:

[#36952] Re: [Request for Comment] avoid timer thread — Eric Wong <normalperson@...> 2011/06/10

Mark Somerville <mark@scottishclimbs.com> wrote:

[#37080] Re: [Request for Comment] avoid timer thread — Mark Somerville <mark@...> 2011/06/13

On Sat, Jun 11, 2011 at 05:57:11AM +0900, Eric Wong wrote:

[#37103] Re: [Request for Comment] avoid timer thread — Eric Wong <normalperson@...> 2011/06/13

Mark Somerville <mark@scottishclimbs.com> wrote:

[#37187] Re: [Request for Comment] avoid timer thread — SASADA Koichi <ko1@...> 2011/06/16

(2011/06/14 3:37), Eric Wong wrote:

[#37195] Re: [Request for Comment] avoid timer thread — Eric Wong <normalperson@...> 2011/06/17

SASADA Koichi <ko1@atdot.net> wrote:

[#37205] Re: [Request for Comment] avoid timer thread — Eric Wong <normalperson@...> 2011/06/17

Eric Wong <normalperson@yhbt.net> wrote:

[#33469] [Ruby 1.9-Feature#4100][Open] Improve Net::HTTP documentation — Eric Hodel <redmine@...>

Feature #4100: Improve Net::HTTP documentation

12 messages 2010/11/29

[ruby-core:33102] Re: Suggestion for MatchData#first and #last

From: Robert Klemme <shortcutter@...>
Date: 2010-11-08 08:51:30 UTC
List: ruby-core #33102
On Mon, Nov 8, 2010 at 9:34 AM, NARUSE, Yui <naruse@airemix.jp> wrote:
> 2010/11/8 Robert Klemme <shortcutter@googlemail.com>:
>> Btw, I just notice this
>>
>> irb(main):016:0> /(?<f>fo+).*(\g<f>)/ =~ "foooobarfoo"
>> => 0
>> irb(main):017:0> $1
>> => "foo"
>> irb(main):018:0> $2
>> => nil
>> irb(main):019:0> f
>> => "foo"
>> irb(main):020:0> RUBY_VERSION
>> => "1.9.1"
>> irb(main):021:0> RUBY_PATCHLEVEL
>> => 429
>>
>> I thought named group would have the same capturing semantics as
>> unnamed groups but apparently the leading named group is not
>> considered as capturing. s the behavior shown above intended?
>
> When you use named capture, you can't use normal parentheses.
> It becomes (? .. ).

I think this is not true, because as long as I do not use \g I can
access the group via name *and* via index:

irb(main):004:0> /(?<a>fo+)/ =~ "foobar"
=> 0
irb(main):005:0> $1
=> "foo"
irb(main):006:0> a
=> "foo"

That's also in line with what the doc says
http://www.geocities.jp/kosako3/oniguruma/doc/RE.txt

Or did you mean "when using *calls* to named captures"?  Because
that's where the difference comes in.

> So you should like following:
>
> irb(main):001:0> /(?<f>fo+).*(?<g>\g<f>)/ =~ "foooobarfoo"
> => 0
> irb(main):002:0> $1
> => "foo"
> irb(main):003:0> $2
> => "foo"

This still feels wrong: named captures work quite differently than
unnamed captures then.  When I start out with this:

irb(main):015:0> /(?<f>fo+).*\g<f>/ =~ "foooobarfoo"
=> 0
irb(main):016:0> $1
=> "foo"
irb(main):017:0> $2
=> nil
irb(main):018:0> f
=> "foo"

this is basically the same as

irb(main):023:0> /(fo+).*\1/ =~ "foooobarfoo"
=> 0
irb(main):024:0> $1
=> "foo"
irb(main):025:0> $2
=> nil

Now I add parentheses

irb(main):026:0> /(?<f>fo+).*(\g<f>)/ =~ "foooobarfoo"
=> 0
irb(main):027:0> $1
=> "foo"
irb(main):028:0> $2
=> nil

and expect the same to happen as with unnamed groups:

irb(main):029:0> /(fo+).*(\1)/ =~ "foooobarfoo"
=> 0
irb(main):030:0> $1
=> "foo"
irb(main):031:0> $2
=> "foo"

You can see that now $2 is set.  I just expect named captures to work
the same.  But it does not work even if I embed the backref in a
longer regexp:

irb(main):032:0> /(?<f>fo+).*(r\g<f>)/ =~ "foooobarfoo"
=> 0
irb(main):033:0> $1
=> "foo"
irb(main):034:0> $2
=> nil

I believe $2 should now be "rfoo" because that's what happens with
unnamed captures:

irb(main):035:0> /(fo+).*(r\1)/ =~ "foooobarfoo"
=> 0
irb(main):036:0> $1
=> "foo"
irb(main):037:0> $2
=> "rfoo"

Kind regards

robert

-- 
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/

In This Thread

Prev Next