el análisis y la modificación de los elementos HTML en C no destructivos ++
-
12-09-2019 - |
Pregunta
Tengo una necesidad de hacer algunas modificaciones sencillas en HTML en C ++, preferiblemente sin tener que reescribir por completo el HTML, como lo que sucede cuando se utiliza libxml2 o MSHTML.
En particular, deben ser capaces de leer, y entonces (potencialmente) modificar, el atributo "src" de todos los elementos "img". Necesito que sea lo suficientemente robusta como para ser capaz de hacer esto con cualquier HTML válido, pero preferiblemente sin cambiar ninguno de los otros HTML en el proceso.
¿Hay bibliotecas por ahí que sería capaz de manejar esto? O se trata de algo que pueda hacer con las expresiones regulares? No soy muy experto con las expresiones regulares, y he leído un montón de preguntas aquí que dicen que usted no debe utilizarlos para analizar HTML, pero no me queda claro si eso se aplica a algo como esto o si ese principio se aplica principalmente para el análisis en el contexto de la construcción de un árbol del HTML.
Solución
Las expresiones regulares no son recomendables para el HTML, ya que no manejan bien las etiquetas anidadas. Deben estar bien para este propósito.
Otros consejos
Trate de buscar en HTMLTidy
Lo he usado para cosas similares en el pasado.