Forum: Italian Ruby user group Problema con conversione

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Stefano D. (Guest)
on 2009-01-27 16:42
Ragazzi ho un problema che è la prima volta che incontro e non riesco a
capire come poterlo risolverlo.Ho creto il seguente codice:

d=primariga[1]
uguale=d.index "="
puts "#{d[uguale]}"
 if d[uguale..(d.size)]=="=record"
   puts "il confronto è esatto"
 else
end

Dove vorrei che mi venga fatto un confronto tra un array che contiene
una frase e l'elemento "=record".Tuttavia essendo che l'elemento
nell'array può variare vorrei che il mio confronto sia dinamico,quindi
ho fatto cercare l'elemento "=" nell'array di "d" e poi l'if fa il
confronto.Nonostante un consiglio di gabriele(che ringrazio) il problema
non si è risolto,generandomi il seguente errore:

in `[]': no implicit conversion from nil to integer (TypeError)
from verifica.rb:182
from verifica.rb:8:in `each'
from verifica.rb:8

Cosa posso fare per eliminare questo errore???

Ciao a tutti!!!!!
Claudio P. (Guest)
on 2009-01-27 17:57
Stefano De nigris wrote:
> ...
> Cosa posso fare per eliminare questo errore???
>
> Ciao a tutti!!!!!

Se la riga che leggi (cioe' d) non contiene "=", uguale conterra' nil e
non potra' essere usato per costruire un range.

Ma se devi cercare una riga che finisce con "=record" non e' meglio un
test diretto?

if d =~ /=record$/
...
Stefano D. (Guest)
on 2009-01-28 16:18
Hai ragione claudio,la prima istruzione c'è "=" ma nelle altre no,perciò
mi da errore.Credo che farò come hai detto tu:
> if d =~ /=record$/
un'ultima cosa a che serve il $ finale???
Andrea C. (Guest)
on 2009-01-28 16:38
(Received via mailing list)
On 1/28/09 3:18 PM, Stefano De nigris wrote:
> Hai ragione claudio,la prima istruzione c'è "=" ma nelle altre no,perciò
> mi da errore.Credo che farò come hai detto tu:
>
>> if d =~ /=record$/
>>
> un'ultima cosa a che serve il $ finale???
>

http://letmegooglethatforyou.com/?q=espressioni+re...
Pietro G. (Guest)
on 2009-01-28 16:44
(Received via mailing list)
2009/1/28 Stefano De nigris <removed_email_address@domain.invalid>:
> un'ultima cosa a che serve il $ finale???

in un'espressione regolare, $ indica la fine della stringa: se cerchi
/dipinto$/ non trovi "dipintore", mentre se cerchi /dipinto/ lo trovi.

ti consiglio vivamente di studiare le espressioni regolari.

qualche link:

* un'introduzione:
http://www.regular-expressions.info/ruby.html

* reference dei caratteri speciali:
http://doc.infosnel.nl/ruby_regular_expressions.html

non ho trovato molto in italiano, ma forse non ho cercato bene. magari
c'è.
però puoi studiare la sintassi delle espressioni regolari generica e
poi guardare quali sono le (poche) particolarità del dialetto di ruby.

magari, però, per cominciare, segui il link che ti ha mandato andrea.
Stefano D. (Guest)
on 2009-01-28 16:58
Pietro lo ho studiate,ma sul libro che ho comprato non ci sono molti
cose speigate,rispetto ai link che mi avete date perciò non so usare al
meglio le espressioni :P!!!
>
> ti consiglio vivamente di studiare le espressioni regolari.
>
Comunque grazie lo stesso.Ciao
Pietro G. (Guest)
on 2009-01-28 17:20
(Received via mailing list)
2009/1/28 Stefano De nigris <removed_email_address@domain.invalid>:
> Pietro lo ho studiate,ma sul libro che ho comprato non ci sono molti
> cose speigate,rispetto ai link che mi avete date perciò non so usare al
> meglio le espressioni :P!!!

per favore, mi dici qual è il titolo di questo libro sulle regular
expression che non parla del simbolo "$"?
Stefano D. (Guest)
on 2009-01-28 17:31
Il libro è Ruby per applicazioni web dell'apogeo.Premetto che lo
considero un ottimo libro,ma ha tralasciato un po le espressioni
regolari,avrei preferito qualche esempio e spiegazione in più essendo un
argomento imporatante.

Ciao a tutti!!!!
This topic is locked and can not be replied to.