Le stringhe di Ruby sono sequenze delimitate da apici o virgolette.
Ecco due esempi:
Macintosh:~ mico$ irb
>> a='Ciao'
=> "Ciao"
>> b="#{a} Michele"
=> "Ciao Michele"
>>
caratteri speciali
Come nella shell di Unix, le stringhe fra apici sono più letterali delle altre, cioè sfuggono alla sostituzione di caratteri speciali. Ecco la lista dei caratteri speciali gestiti da Ruby:
t tab(0x09)
\n newline(0x0a)
\r carriage return(0x0d)
\f form feed(0x0c)
\b backspace(0x08)
\a bell(0x07)
\e escape(0x1b)
\s whitespace(0x20)
\nnn carattere di valore ottale nnn
\xnn carattere di valore esadecimale nn
\cx control x
\C-x control x
\M-x meta x (c | 0x80)
\M-\C-x meta control x
\x il carattere preceduto da backslash
Sostituzione di espressioni
Abbiamo già visto in un esempio precedente la sostituzione di una stringa in un’altra con una sequenza che inizia con il carattere hash,
>> b
=> "Ciao Michele"
>> c="#{b} e Attilia"
=> "Ciao Michele e Attilia"
Costanti stringa su più righe
Come la shell di Unix, Ruby gestisce costanti stringa su più righe, chiamate here docs, cioè documenti inseriti sul posto, delimitati da due segni di minore e una stringa a scelta, per esempio fine, come nel frammento seguente:
>> a= <fine una riga, due righe, tre righe fine
Sostituzione dell’output di comandi
Come nella shell di Unix, Ruby permette di avviare un programma catturandone l’output in una variabile, come segue
>> a=`date`
=> "Gio 2 Apr 2009 16:34:16 CEST\n"
E non finisce qui, il seguito alla prossima puntata, buona sperimentazione.
Ricordiamo che chi usa MacOS o Linux ha molto probabilmente già a disposizione una copia di ruby e dell’interprete da riga di comando irb, basta lanciare il comando irb da una shell per controllare.
Chi usa Windows, può scaricare e installare l’ambiente ruby come abbiamo consigliato in questo articolo.