¿Analizar el código html o usar regex con java?

Eche un vistazo a la sintaxis de selector de JSoup .

Si está buscando todos los aelementos con un hrefatributo, puede encontrarlos así:

String theHtmlInYourExample = "...";
Document doc = Jsoup.parse(theHtmlInYourExample);
Elements links = doc.select("a[href]");

A partir de ahí, debe poder extraer el texto del elemento y el valor del hrefatributo para crear su HashMap.

Respuesta 1

Regex:

\<a\s+href\s*\=\s*["']/dotlrn/classes/c033.+\>(.*)\(\d+\)\</a\>

Cadena Java:

"\\<a\\s+href\\s*\\=\\s*[\"']/dotlrn/classes/c033.+\\>(.*)\\(\\d+\\)\\</a\\>"

Probablemente no lo encuentre confiable, pero el primer grupo de coincidencia será la cadena deseada si las páginas coinciden con lo que proporcionó.

Aquí hay un lugar para probar expresiones regulares de Java

Respuesta: 2

¿Por qué no usar la API DOM? Puede obtener atributos y valores de manera bastante trivial con él.

Respuesta: 3

Así que aquí está el problema, actualmente estoy trabajando en un proyecto donde la interfaz está estrechamente unida al backend. La versión heredada de la aplicación se crea utilizando archivos .JSP, el archivo de índice es un índice ...

Tengo un cierto método que entrega un objeto de restricción (donde Restriction es una interfaz). Y dado que su implementación ya está probada, solo quiero probar si mi método realmente ofrece un ...

Necesito crear un método que devuelva un número muestreado de alguna distribución aleatoria donde cada vez que llame al método, el número devuelto sea más grande que cualquier número devuelto anteriormente. O, en otro ...

Me doy cuenta de que hay otra pregunta relacionada con los "infinitos" JScrollPanes, sin embargo, creo que lo que estoy buscando es algo que es sutilmente diferente. Básicamente, tengo una colección de objetos ...