Link copiato negli appunti
Direttamente da Snipplr 3 "snippet" che vi permetteranno di estendere il tipo "String" di Javascript con 3 comodi metodi:
Il primo metodo permette di fare il parsing di url all'interno di una stringa e lo trasforma in un link cliccabile (aggiungendo quindi il tag <a>).
String.prototype.parseURL = function() { return this.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/g, function(url) { return url.link(url); }); };
Il secondo e il terzo snippet sono dedicati a Twitter. Il primo converte stringhe del tipo @utente in link a profili Twitter, il secondo permette invece di convertire #hashtag in link alla corrispettiva pagina search di Twitter.
String.prototype.parseUsername = function() { return this.replace(/[@]+[A-Za-z0-9-_]+/g, function(u) { var username = u.replace("@","") return u.link("http://twitter.com/"+username); }); }; String.prototype.parseHashtag = function() { return this.replace(/[#]+[A-Za-z0-9-_]+/g, function(t) { var tag = t.replace("#","%23") return t.link("http://search.twitter.com/search?q="+tag); }); };
Come usarli? Poniamo di dover (tramite jQuery) popolare una div con un testo ricevuto via AJAX (o da una qualunque altra fonte). Applichiamo tutti e tre i metodi in successione... Ecco come fare:
tweet = myText.parseURL().parseHashtag().parseUsername(); $('#tweetlist').append('<div>'+tweet+'</div>')