Ver Mensaje Individual
  #17 (permalink)  
Antiguo 07/04/2010, 14:17
Avatar de mayid
mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 8 meses
Puntos: 101
Respuesta: Encontrar html con expresiones regulares

Lo tengo aca:
http://www.aoi-castellano.com.ar/AoIManual/layout.php

Podes usar el menu para ver como funciona el script en las diferentes paginas. Vas a ver que en alguna funciona peor que en otras.

El script que te dejo es el que uso para imprimir el SubMenu con PHP. Es en el que me baso para evaluar resultados (aunque siempre podes hacerlo con print_r();)

Cita:
$texto = "ta ta ta ta ta ";

<?php
$patron = '/<a[^>]*>(.(?!a>))*<h[32]>.*<\/h[32]>.*<\/a>/isU'; //|<a.*>.*<h3>(.*)<\/h3>.*<\/a> // [^(<\/a>)]+
//$patron = '/<a name="(.*)">(.*)<\/a>/isU';

preg_match_all($patron, $texto, $subtitle, PREG_SET_ORDER);

for($i=0;$i<count($subtitle);$i++){
if (isset($subtitle[$i][0])){
$subtitulos[] = strip_tags(trim($subtitle[$i][0]), "<a>");
}
};
?>
<div id="submenu" class="menu">
<?php

if(isset($subtitulos)){

echo "<ul>"."\r";

$subtitulos = array_values(array_diff($subtitulos, array('')));

for($i=0;$i<count($subtitulos);$i++){

echo "<li>$subtitulos[$i]</li>"."\r";
};

echo "</ul>"."\r";
}
?>
</div>
Me encantaría que resolvamos el misterio!