Ver Mensaje Individual
  #16 (permalink)  
Antiguo 27/06/2003, 09:29
Avatar de Manoloweb
Manoloweb
 
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 3 meses
Puntos: 5
Bueno, creo que es hora de dar la bienvenida a nuestras amigas, las "Expresiones Regulares"...

Código PHP:
<?
function buscando($buscado,$cadena){
    
$buscar[0]=strtoupper($buscado);
    
$buscar[1]=strtolower($buscado);
    
$buscar[2]=ucfirst($buscar[1]);
    
$patron="/(<[h|H]1[A-Za-z0-9 \"=]*>)(.*)(".$buscar[0]."|".$buscar[1]."|".$buscar[2].")(.*)(<\/[h|H]1>)/";
    
$busqueda=preg_match_all($patron,$cadena,$salida);
    
$resultado["cuantos"]=count($salida[0]);
    foreach (
$salida[0] as $valor){
        
$resultado["textos"][]=$valor;
    }
    return 
$resultado;
}
// AQUI TERMINA LA FUNCION, AHORA LA PROBAMOS

// PRIMERO CREAMOS UNAS VARIABLES PARA USARLAS EN LA FUNCION
$buscado="prueba";
$cadena= <<<HTML
    <html>
    <head>
    <title>Pagina de Prueba</title>
    </head>
    <body>
    <h1>Esta es una Prueba</h1>
    <p>Aqui hay un parrafo intermedio</p>
    <h1 class="encabezado">Esta prueba es mas compleja</h1>
    <h1>Este no trae el texto buscado</h1>
    <h1> Pero esta si dice "prueba"</h1>
    </body>
    </html>
HTML;

// AHORA LLAMAMOS A LA FUNCION
$prueba=buscando($buscado,$cadena);

// Ahora vamos a ver los resultados

echo "Cantidad de Coincidencias: ".$prueba["cuantos"]."<br>\n";
echo 
"Estas fueron las Coincidencias: <br>\n";
echo 
"<UL>\n";
foreach (
$prueba["textos"] as $p){
    echo 
"<LI>".htmlspecialchars($p)."</LI>\n";
}

?>

Pruebalo, creo que es lo que necesitas...

Saludos!
__________________
Manoloweb