[#8136] Confused exception handling in Continuation Context — "Robert Dober" <robert.dober@...>

Hi all

13 messages 2006/07/06

[#8248] One-Click Installer: MinGW? or VC2005? — "Curt Hibbs" <ml.chibbs@...>

I just posted this to ruby-talk. But I would also like to discuss this

33 messages 2006/07/18
[#8264] Re: One-Click Installer: MinGW? or VC2005? — Charlie Savage <cfis@...> 2006/07/19

From my experience using both tool chains on Windows (for the ruby-prof

[#8266] Re: One-Click Installer: MinGW? or VC2005? — "Curt Hibbs" <ml.chibbs@...> 2006/07/19

Tim, I'm going to top reply since your post was so long. I'm interested in

[#8267] Re: One-Click Installer: MinGW? or VC2005? — Charlie Savage <cfis@...> 2006/07/19

> Tim, I'm going to top reply since your post was so long. I'm interested in

[#8271] my sandboxing extension!! — why the lucky stiff <ruby-core@...>

I have (what feels like) very exciting news. I finally sat down to code up my

17 messages 2006/07/19

[#8430] Re: doc patch: weakref. — "Berger, Daniel" <Daniel.Berger@...>

> -----Original Message-----

19 messages 2006/07/28
[#8434] Re: doc patch: weakref. — Yukihiro Matsumoto <matz@...> 2006/07/29

Hi,

[#8436] Re: doc patch: weakref. — Daniel Berger <djberg96@...> 2006/07/29

Yukihiro Matsumoto wrote:

[#8437] Re: doc patch: weakref. — Mauricio Fernandez <mfp@...> 2006/07/29

On Sat, Jul 29, 2006 at 07:37:24PM +0900, Daniel Berger wrote:

[#8441] Inconsistency in scoping during module_eval? — "Charles O Nutter" <headius@...>

I have the following code:

18 messages 2006/07/30
[#8442] Re: Inconsistency in scoping during module_eval? — nobu@... 2006/07/30

Hi,

[#8443] Re: Inconsistency in scoping during module_eval? — "Charles O Nutter" <headius@...> 2006/07/30

Why does this:

[#8445] Re: Inconsistency in scoping during module_eval? — Yukihiro Matsumoto <matz@...> 2006/07/30

Hi,

[#8454] Re: Inconsistency in scoping during module_eval? — "Charles O Nutter" <headius@...> 2006/07/31

So to clarify...

Regular-Expressions Problem/Bug

From: Reto Schuettel <reto-ruby-core@...>
Date: 2006-07-19 11:23:45 UTC
List: ruby-core #8273
Hi 

I've experienced a rather strange problem with regular-expressions
recently. I used a RE to capture some input from a cisco-device, like:

 1. Everything up to...   (.*)
 2. ... Beginning of the prompt  'switch-123'
 3. ... variable middle part of the prompt [a-zA-Z0-9_-]+
 4. ...  And a '#' at the end of the prompt #

      1___2__3_4
-->  /(.*)ABC.*#/

Except to one case this RE worked quite well: 

| length = 20000
| 
| # "x" * length + "ABC" + "y" * 10 + "#" 
| -> matches immediately, return true
| 
| # "x" * length + "XYZ" + "y" * 10 + "#" 
| -> matches immediately, return false. Please note that the tag 'ABC'
| isn't in the string
| 
| # "x" * length + "ABC" + "y" * 10 
| -> takes forever (if LENGHT is big enough), as you can see here the tag
| 'ABC' occurred, but the ending of the second variable part hasn't.

After some experiments I could even simplify the problem:
LENGTH = 20000
text = "x" * LENGTH + "ABC" + "y" * 10
re = /(.*)ABC[y]#/
-> takes forever...

I'm not sure if this is a problem of the ruby RE-implementation 
or if this a problem of RE in general (Keyword: back-tracking). Some
tests with Perl showed to me that Perl usually reacts better to such
regular-expressions.

Attached is a short test-program.

Regards,
Reto Schtel

--tKW2IUtsqtDRztdT
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: attachment; filename="re.rb"

LENGTH = 20000

var1 = "x" * LENGTH + "ABC" + "y" * 10 + "#"
var2 = "x" * LENGTH + "XYZ" + "y" * 10 
var3 = "x" * LENGTH + "ABC" + "y" * 10 

re = /(.*)ABC.*#/

[var1, var2, var3].each do |text|
  puts re =~ text ? "true" : "false"
end


--tKW2IUtsqtDRztdT--

In This Thread

Prev Next