October 2009

RegEx, trovare parole indietro

Le regular Expression mi hanno sempre affascinato in modo particolare!
Oggi mi sono imbattuto in un problemino carino da risolvere e magari può essere di aiuto a qualcuno:

Scenario:
all’interno di un XML ho delle didascalie che in alcuni punti contengono la nomenclatura speciale del tipo <1986?>. Questo XML lo carico all’interno di un flash e quindi i caratteri “<” e “>” non vengono interpretati come caratteri ma tutto quel blocco viene interpretato come un TAG. Risulta quindi necessario convertire i due segni con &lt; e c &gt; (i relativi codici).

Esempio di stringa:
<tag_xml><![CDATA[<body>Immagine  8) Ritratto privato;<1986?></body>]]></tag_xml>

Devo andare ad isolare solo <1986?> e farlo diventare &lt;1986&gt;
Non posso cercare i carateri < e > poichè questi sono presenti in altri tag che devono rimanere tali.
Ho quindi deciso di rintracciare all’interno dell’xml, il testo ?> e recuperare l’intera parola precedente a quel punto. Isolo nella regex ile tre diverse parti (“<”, “1982″ e “?>”) e sostituisco la prima e l’ultima.

Ecco qua:
(<)(\d+(?=\?\>))(\?\>)

Con sostituzione:
&lt;$2&gt;

(Il segnaposto viene richiamato da alcuni software in maniera differente. $2 è il modo in cui TextMate su Osx richiama i segnaposti regex)
E il gioco è fatto!
 

October 29, 2009
RegEx, trovare parole indietro

Come far funzionare Ruby on Rails sui server JaguarPc (CPanel)

Uso da moltissimi anni senza dovermi mai lamentare troppo, del servizio hosting offerto da jaguar (http://www.jaguarpc.com).
Jaguar utilizza cpanel per far gestire lo spazio e il server ai propri clienti. Per la stragrande maggioranza dei siti che si producono, a meno che non ci siano esigenze particolari, questo servizio è sempre stato sufficiente, a volte anche molto comodo grazie al “fantastico panel” che permette di installare CMS al volo.
Diverso tempo fa, cpanel e jaguar hanno introdotto il supporto a Ruby on Rails. Puoi creare la tua applicazione e indirizzarla in una percorso definito anche non nella root (es: http://tuodominio.it/test/)
Da sviluppatore Rails quando vidi questa cosa ebbi un sussulto di gioia! per alcuni miei progetti era una manno poter passare da php a questo framework.
Ci ho pravato mote volte ma MAI sono sono riuscito a far girare una applicazione in maniera corretta. E a nulla sono serviti i 29 ticket che ho aperto con l’assistenza (sempre ottima devo dire) ma in questo caso molto impreparata.
Alla fine, grazie al mio guru/maestro il buon vechio Joe, ieri siamo riusciti e mi sembra doveroso condividere questa scoperta che può essere utile ad altri.

Ovviamente questa piccola guida è solo per chi possiede un hostin con cpanel.
i passi previ sono:

  • creare una nuova applicazione Rails su cpanel dandole un nome (es: test)
  • creare un rewrite affinche il server possa puntare http://tuodominio.it:12030/test su http://tuodominio.it/test
  • avviare l’applicazione cliccando su START

A questo punto il sistema crea un .htaccess nella directory public_html e il sito con la classica index di rails dovrebbe essere visibile. Mai successo!
Perchè? non sono un esperto di apache ecc e il probelma sta prorpio nel .htaccess generato dal sistema che dovrebbe risultare più o meno così:

RewriteEngine on

RewriteCond %{HTTP_HOST} ^tuodominio.it$ [OR]
RewriteCond %{HTTP_HOST} ^www.tuodominio.it$
RewriteRule ^test? http\:\/\/127\.0\.0\.1\:12030$1 [P,QSA,L]

Il punto è che la directory public/ non vien eassolutamente raggiunta e così nemmeno le immagini, css, javascript ecc
Se però creiamo un primo controller e un action, questa la visualizzaremo (senza stili nè js)
es: http://tuodominio.it/test/controller/action/

SOLUZIONE: basta modificare la stringa dell’applicazione in questo modo:

RewriteRule ^test(/.*)? http\:\/\/127\.0\.0\.1\:12031$1 [P,QSA,L]

la regex non era corretta, così dovrebbe funzionare tutto

grazie joe!

October 23, 2009
Come far funzionare Ruby on Rails sui server JaguarPc (CPanel)

Dual screen wallpaper


Ancora una bella raccolta offerta da Six Revision per avere degli sfondi desktop per chi usa il monitor doppio.
In mezzo a tanti post da “nerd” ogni tanto qualcosa di “svago” ci sta!

Visualizza articolo completo

Dual screen wallpaper