Ver Mensaje Individual
  #13 (permalink)  
Antiguo 13/03/2011, 18:26
Avatar de enlinea777
enlinea777
 
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 16 años, 6 meses
Puntos: 127
Respuesta: ayuda con regexp

Cita:
Iniciado por ernewston Ver Mensaje
Buenas,

necesito ayuda para realizar lo siguiente:

tengo en una variable texto en html, y en éste está entre comentarios lo que se debe borrar: "<!-- begin remove -->" y "<!-- end remove -->"

Lo que deseo es usar regular expressions y preg_replace para eliminar cualquier cosa que esté entre esos comentarios (sea palabras, espacios y saltos de línea) incluyendo eliminar estos comentarios.

Espero que alguien me pueda ayudar.

Desde ya, muchas gracias.
usa esta funcion esta 100% funcional mira aqui:
http://creaelicita.cl/descomentar.php

Código PHP:
function borrar_comentarios($data){
$data=str_replace("\r","",$data);
$data=str_replace("\t","",$data);
$data=explode("\n",$data);
        
$totalc=count($data);
            for(
$i=0$i<$totalc$i++){
                
$linea=trim($data[$i]);
                
$linea=preg_replace('@\<\!\-\-(.*)\-\-\>@Us'''$linea);
                
$lineapreg_replace('@/\*(.*)\*/@Us'''$linea);
                if(
substr($linea,0,2)!='//'){
                    if(
trim($linea)!=""){
                        if(
strpos($linea_unida,"//")){
                        
$linea_unida=borrar_espacios($linea);
                        
$tesT=strpos($linea_unida,"//");
                        
$tesT=substr($linea_unida,$tesT-1,1);
                        if(
$tesT==";" || $tesT=="}" || $tesT=="{"){
                        
$esT=strpos($linea,"//");    
                        
$linea=str_replace(substr($linea,$esT-1),"",$linea); 
                        }}
                        
$dataF.=$linea."\n";
                    }
                }
            }
$data=$dataF
return 
trim($data);

funciona bien con cualquier tipi de texto string o parrafo.

P.D. (RodrigoG)