Debería... pero si a veces anda y a veces no, no tenes forma de atrapar cuando no anda, y loguear toda la información de la instancia de la clave y la instancia con la cual queres buscar esa clave?
Es un poco rompe pelotas, pero quisiera imaginarme que un bug en el lenguaje/librería de hash sea la opción menos probable, y que si a veces anda y a veces no, se deba a un error lógico del código más que a un error de ruby, si fuese un error lógico, reimplementar eql y hash de Regexp es lo más tedioso... aunque debería de ser relativamente sencillo ;) En fin, de las 9 AM que estoy programando, me voy a pasear un rato, si no lo resolves pásame el código :) Saludos ;) -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Aureliano Calvo Sent: Domingo, 05 de Julio de 2009 06:37 p.m. To: Rodrigo Dominguez Cc: Grupo Ruby Argentina Subject: Re: [RubyArg] Expresiones regulares como claves en hashes La clave en cuestión es /([A-Za-z0-9]|\303[\200-\277])*(_([A-Za-z0-9]|\303[\200-\277])+)+/. Estoy probando con: $ ruby --version ruby 1.8.7 (2008-08-11 patchlevel 72) [i486-linux] Lo raro, es que anda a veces sí y a veces no. El código que hace que todo falle es demasiado grande como para postearlo en la lista y no encontré como achicarlo. Estoy pensando en cortar camino y reimplementar eql y hash de Regexp. Eso debería andar. Aureliano. 2009/7/5 Rodrigo Dominguez <[email protected]>: > http://www.ruby-doc.org/core/classes/Hash.html > > Siguiendo la doc, recupera la key del hash que no te devuelve (ya fuese > iterando el hash, o lo que fuese), y a través del .eql? fijate si es igual a > la key con la cual queres traer el valor de esa key... > > Si todavía te putea, volviendo a la doc del Hash, implementa tu propia clase > que defina eql? Y hash y ahí debería de andarte. > > Por otro lado, si queres, postea la key en cuestión y como es que te falla. > > Saludos ;) > > -----Original Message----- > From: [email protected] > [mailto:[email protected]] On Behalf Of Aureliano Calvo > Sent: Domingo, 05 de Julio de 2009 06:04 p.m. > To: Grupo Ruby Argentina > Subject: [RubyArg] Expresiones regulares como claves en hashes > > Hola, > > estoy teniendo un bug muy raro en el que tengo un Hash que tiene como > claves regex y símbolos contesta que no tiene un elemento que tiene. > > El hash tiene más de 10 elementos y cuando hago h[h.keys[2]] devuelve > nil!!!!!!!! > > ¿Saben si se pueden usar expresiones regulares como claves de hashes? > En la iteración anterior, el hash con regexs como claves andaba joya. > > ¿Les pasó algo parecido antes?¿el problema vendrá por otro lado? > > Muchas gracias, > Aureliano. > _______________________________________________ > Ruby mailing list > [email protected] > http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar > > > __________ Información de ESET Smart Security, versión de la base de firmas > de virus 4219 (20090705) __________ > > ESET Smart Security ha comprobado este mensaje. > > http://www.eset.com > > > __________ Informacin de ESET Smart Security, versin de la base de firmas de virus 4219 (20090705) __________ ESET Smart Security ha comprobado este mensaje. http://www.eset.com __________ Información de ESET Smart Security, versión de la base de firmas de virus 4219 (20090705) __________ ESET Smart Security ha comprobado este mensaje. http://www.eset.com _______________________________________________ Ruby mailing list [email protected] http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar
