Category: How-to

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

Ancora IE 6! e bastaaaaaaa!!!!

Che ancora, nel 2009, nell’era in cui il web 2.0 sta diventando vecchio, che ancora i webdesigners debbano trovarsi a fare i conti per Internet Explorer 6 (quando siamo ormai alla versione 8, quando esistono browser molto più veloci, affidabili), questo è lo trovo quantomeno assurdo. Stessimo poi parlando di software “costosi” potrei forse capire la questione “prezzo”, ma i browser si sa, sono gratuiti. Allora perchè le pubbliche amministrazioni, moltissimi clienti, e la stragande maggioranza del mondo continua ostinatamente ad utilizzare IE6? Perchè??!!

Ogni volta che pronuncio le magiche parole “me ne frego di IE6, se uno ce l’ha, si arrangia e vede male i siti” ecco che arriva un lavoro che richiede massima compatibilità con quel browser… la bestia!

SIX REVISION offre in questi giorni un ottimo articolo che descrive alcune vie per “hackare” i milioni di bug che la bestia ci propina da anni facendo lievitare enormente il numero delle ore spese per il codeing dei nostri siti.

Definitive Guide to Taming the IE6 Beast

July 28, 2009
Ancora IE 6! e bastaaaaaaa!!!!

QLAB


E’ andato in scena dal 19 al 23 maggio a Roma presso il nuovo Teatro allo Scalo, lo spettacolo “Prendi un piccolo fatto vero” (produzione Mimesis) monologo interpretato dall’attore Lino Guanciale che regala sempre grandi emozioni.

Lo spettacolo prevede un’intenso uso di materiale multimediale audio video che viene mixato in tempo reale dalla regia per potersi sincronizzare sui tempi di scena. Sono oltre 40 gli interventi eseguiti in un’ora di spettacolo. I video vengono proiettati sul tela, sul palco e sempre vi è la necessità di evitare in tutti i modi la visualizzazione di elementi che abbiano a che fare col computer (mouse, finestre ecc). Allo stesso tempo, l’audio esce direttamente sull’impianto via mixer.
E’ grazie al software QLAB che è stato possiobile andare in scena senza alcun intoppo rispettando tutte le esigenze di scena. QLAB permette di proiettare i video direttamente sul monitor secondario (il proiettore nel nostro caso), definire una scheda audio esterna come canale di uscita, scegliere la durata del filmato e il suo eventuale loop, programamre dissolvenze in entrata e in uscita, programmare ritardi, delay audio e video, programmare liste di loop e auto start che permettono di definire una sequenza personalizzata e semi automatizzata.
QLAB è un software proprietario la cui licenza full è, per molti casi in cui viene usato solo saltuariamente, molto costosa. Lo staff che lo realizza ha però previsto per questo motivo la possibilità di “affittare” ad un prezzo decisamente accessibile, la licenza per un tot di giorni rendendo così la spesa quasi irrisoria per il favoloso servizio che offre.

QLAB

drupal 6, tagadelic cache clear

I’ve got some problem with the tagadelic module in Drupal 6.x to create tag clouds. Even having removed the “cache” from the site setting, when a new post was published, the clouds didn’t change, never!

At the end I’ve fount a little patch on the web and I’m trying here to explain it to new users, not familiar with patch.

  1. go into the module directory “sites/all/modules/tagadelic” and open the file tagadelic.module with your favourite editor
  2. goto line 215 (or around there) and change the line “
    $cache = cache_get($cache_name);" to $cache = cache_get($cache_name, 'cache_block');<br /></pre></li><li>goto line 228 and do the same: change<br /><pre>cache_set($cache_name, $tags); to <br />cache_set($cache_name, $tags, 'cache_block', CACHE_TEMPORARY);

upload the file and the problem will magically disappear.

Original source thanks to: http://drupal.org/node/231030

drupal 6, tagadelic cache clear

PHP convertire apostrofo in apice

Copiando un testo da MS Word in una form capita a volte di imbattersi negli apostrofi di tipo ” ’ ” che difficilmente vengono convertiti correttamente in UTF-8. Questo capita (leggendo un po’ di bug report di php) con alcune versioni di php.

Brutale mna efficace al scelta di convertire tutti questi apostrofi con il singolo apice ‘

  $patterns[0] = ‘/[\x82\x91\x92]/’;
  $replacements[0] = “‘”;
  $txt = preg_replace($patterns, $replacements, “Governatore d’Italia”);

che renderà “Governatore d’Italia”

PHP convertire apostrofo in apice