Tra le novità di ruby1.9 ci sono alcune migliorie sulle espressioni regolari, oltre ad un significativo miglioramento nelle prestazioni, sono state introdotte due nuove funzionalità: look-behind e named captures.
Look Behind
look-ahead e look-behind sono asserzioni che non catturano l’elemento, ma controllano che intorno, rispettivamente davanti e dietro, sia presente o assente. Mentre look-ahead era già presente in ruby 1.8 la look-behind è stata introdotta con la 1.9. Per la look-behind positiva si utilizza la formula (?<=regex), la look-behind negativa invece (?<!regex). Di seguito due esempi, positivo e negativo, di look behind:
Named Capturing Groups
Named capture è una funzionalità a mio avviso molto rubish ed elegante, permette semplicemente di dare un nome alla capture, il nome sarà poi ovviamente la key nel MatchData. Per utilizzare la Named Capture si usa la sintassi (?<name>group). Di seguito un’esempio:
Se necessario utilizzare ruby 1.8 c’è a disposizione la gem di Oniguruma .
Installare Ruby on Rails 3 oggi è molto piu semplice grazie a due tool che aiutano a gestire le dipendenze: RVM per avere diverse istanze di ruby ognuna con un suo set di gemme e bundler che aiuta a gestire i set di gemme necessari per ogni istanza di ruby on rails.
Per installare RVM bisogna innanzitutto assicurarsi che siano installati alcuni pacchetti:
sudo apt-get install subversion bison git-core curl zlib1g-dev libssl-dev
Successivamente lanciare il seguente comando:
bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )
a questo punto inserire in ~/.bashrc la seguente linea:
[[ -s $HOME/.rvm/scripts/rvm ]] && source $HOME/.rvm/scripts/rvm
e voilà, una volta riavviata la shell rvm è pronto per essere utilizzato, per installare ruby 1.9.2 (al momento l’ultima release stabile) basta lanciare il comando:
rvm pkg install zlib
rvm install ruby-1.9.2
Read more…
Social Networks