Successivo

Windows

Ruby tuesday: costanti stringa

Michele Costabile | 2 Aprile 2009

Windows

Proseguiamo la nostra analisi delle possibilità  offerte da questo linguaggio di programmazione.

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.