java之如何解析/格式化充满 CSS 代码的 RSS 标签
我正在使用以下 RSS:http://aplicaciones.esi.us.es/antalumnos/rss.xml
正如我们所见,description 标签包含了我需要的文本,并且在文本之间充满了 CSS 代码。这是一个问题,因为一旦我解析了描述标签,我也会得到所有的 CSS 代码。
RSS 链接是用 drupal 6 制作的,无法更改,此外其他 RSS 阅读器如 feedly 可以完美显示所有内容,文本之间无需代码。我该如何处理这个问题?
<description>
<p>&nbsp;<span style="color: rgb(51, 51, 51); font-family: Verdana, Geneva, sans-serif; font-size: 13.3333px; background-color: rgb(255, 255, 255);">El pasado sábado 11 de Junio cerramos la temporada de rutas en bici organizadas por la Asociación con un recorrido de 72 Km por la conocida y espectacular Vía Verde de la Sierra. Con un día soleado y no excesivamente caluroso partimos con nuestras máquinas desde la estación de Puerto Serrano en dirección a Olvera, disfrutando de un bello y rico entorno natural fuimos avanzando con paradas en los sitios más singulares (Chaparro de la Vega, estación de Coripe, Peñón de Zaframagón y estación de Olvera. Una vez aquí retornamos al punto de partida.</span></p>
<div style="padding-top: 0px; border-top-width: 0px; color: rgb(51, 51, 51); font-family: Verdana, Geneva, sans-serif; font-size: 13.3333px; background-color: rgb(255, 255, 255);">
<p>A pesar de la distancia recorrida la ruta se hizo llevadera gracias a la coincidencia de varios factores como la buena compañía, la belleza del entorno, un buen firme parq rodar sin muchos desniveles y con treinta túneles en los que refrescarse a su paso.</p>
<p>Finalmente en el restaurante de la estación de Puerto Serrano compartimos, como de costumbre, un agradable rato para reponer energías degustando los productos de la zona.</p>
<p>Facilitamos algunas fotos:</p>
</div>
<div style="color: rgb(51, 51, 51); font-family: Verdana, Geneva, sans-serif; font-size: 13.3333px; background-color: rgb(255, 255, 255);">&nbsp;</div>
<div style="color: rgb(51, 51, 51); font-family: Verdana, Geneva, sans-serif; font-size: 13.3333px; background-color: rgb(255, 255, 255);"><a title="http://aplicaciones.esi.us.es/antalumnos/node/3144" href="http://aplicaciones.esi.us.es/antalumnos/node/3144" target="_blank" rel="noreferrer" style="color: rgb(1, 134, 186);">http://aplicaciones.esi.us.es/antalumnos/node/3144</a></div>
</description>
请您参考如下方法:
替换所有出现的 style=...
的最佳方法是使用正则表达式 (regex),我认为这是您要删除的 CSS 代码部分。我用这个site作为引用。这是一个小例子:
String text = "style="hfhdjdh;" YAY";
String regex = "(style=")(.*)(")";
System.out.println(text.replaceAll(regex, "replaced"));
这将输出 replaced YAY
。本质上,就像我的评论一样,正则表达式找到了 style="
的地方,(.*) 忽略了里面的任何东西,我们用另一个 "
标记结束。您只需要用空格或空字符串更改替换字符串,它就会将其从您的内容中删除。 replaceAll
应该删除所有出现的地方,因此您不需要逐行搜索。
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。