Articoli Referenze Script FAQ Downloads ASP E-Commerce con ASP Menu Javascript Area Aziende Cocktail Registrazione domini



Evidenziare le parole ricercate con le espressioni regolari

Home + Articoli + Stringhe + Articolo # 66
Autore: Luca Ruggiero

Concesso in esclusiva a Mr.Webmaster. Vietata la riproduzione.


Nella creazione di un motore di ricerca basato su un database spesso si pensa solo a fornire i record corrispondenti alla chiave di ricerca, ma si omette di pensare a dei piccoli particolari che rendono più completa la ricerca e/o che forniscano visivamente la una sensazione di precisione maggiore.

Un trucco frequentemente usato anche da importanti Search Engine della rete come Google, è quello di evidenziare in qualche modo le parole chiave di ricerca direttamente all'atto della fornitura del risultato. E' possibile usare il grassetto o una classe CSS studiata ad hoc per modificare il colore della chiave trovata oppure lo sfondo.

Lascio il discorso stilistico alla fantasia ed alle esigenze del Webmaster interessato; occupiamoci piuttosto della realizzazione dello script descritto attraverso ASP.

Il funzionamento è semplice: creo una funzione accetta come parametri l'intera stringa restituita all'atto della ricerca e la chiave secondo cui la stringa è stata individuata; uso un'espressione regolare fittizia per amalgamare il tutto; la funzione restituirà la stessa stringa del risultato evidenziando, in questo caso, in grassetto la chiave di ricerca e lasciando lo stile predefinito al resto della stringa testuale.

Un esempio di codice:
<%@LANGUAGE = VBScript%>
<%
    Function FiltroRicerca(MyText, MyKey)
        Dim re
        Set re = New RegExp
        re.Pattern = MyKey
        re.Global = True
        re.IgnoreCase = True
        FiltroRicerca = re.Replace(MyText, "<b>" & MyKey & "</b>")
        Set re = Nothing
    End Function

    Dim risultato, chiave

    risultato = "Proviamo a scrivere qualcosa in questa pagina..."
    chiave = "questa"
%>
<html>
<body>

<%=FiltroRicerca(risultato, chiave)%>

</body>
</html>
© 2008 ASP Center di Luca Ruggiero - P. IVA 05564851219 - Disclaimer | Privacy | Pubblicità | Supportaci | Staff | Contatti
  Appunti PHP | Giornale Webmaster | Mr.Webmaster | Download | DevSpy.com | ASPCode.it | ClaudioGarau.it | Webmaster Facile | Come Faccio | CodiceFacile.it | I Programmatori | By Luciani | VoiceXML Italian User Group | Giochi | Extro Web Site | Morpheus Web | AG Web Solutions | Net-Free | PC Sicuro | PC Self | Tutorial Web | Dablones