A mi se me hace que es como un buscador, pero para obtener una densidad, necesitarías varias palabras ¿no?
Yo iría por este lado:
1. Crear la expresión regular que dada una palabra la reemplace con la misma palabra formateada, vamos a decir <span style="background-color:#c0c;">palabra</span>, esta misma función te devuelverá una colección de ocurrencias
2. Crear una función que reciba colecciones, y devuelva la mayor
3. Ordenarlos resultados de acuerdo al número de ocurrencias(densidad).
Suena sencillo pero es bastante laborioso, aquí hay dos buenos enlaces, en el de MS muestran dos buenos ejemplos al final, el de Jack Daniels, es un buen punto de partida:
http://www.ilovejackdaniels.com/asp/...ions#functions http://msdn2.microsoft.com/en-us/library/ms974570.aspx
A estudiar se ha dicho