Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/03/2011, 16:41
ernewston
 
Fecha de Ingreso: julio-2009
Mensajes: 58
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: ayuda con regexp

Cita:
Iniciado por RodrigoG Ver Mensaje
Necesitas algo como ésto:

Código PHP:
Ver original
  1. preg_replace('/<!-- begin remove -->.*<!-- end remove -->/', '', $texto);

El .* representa cualquier carácter que se repita 0 o más veces.

El inconveniente es que hay que escapar varios caracteres, como no tengo buena memoria generalmente uso la función preg_quote, la cual escapa los caracteres especiales por mi :)

Código PHP:
Ver original
  1. echo preg_quote('<!-- begin remove -->texto<!-- end remove -->');
Lo cual imprime:

\<\!-- begin remove --\>texto\<\!-- end remove --\>

Finalmente, tu expresión regular (con la función) es:

Código PHP:
Ver original
  1. preg_replace('/\<\!-- begin remove --\>.*\<\!-- end remove --\>/', '', $texto);

Nada más, nada menos, saludos.
Mh... no me funciona.... aca tengo la prueba:

Código PHP:
<?php

$texto 
"<!-- begin remove --> 
                <div id='container'>
        <!-- end remove -->
        holaa
        <!-- begin remove -->
        <div id='content'>
        <!-- end remove -->
                <!-- begin remove --><h2 class='bottom-border'>tituloo</h2><!-- end remove -->
                textoo
            <!-- begin remove --></div>

            <!-- end remove -->              
        <!-- begin remove --></div>
        <!-- end remove -->"
;

$texto preg_replace('/\<\!-- begin remove --\>.*\<\!-- end remove --\>/'''$texto);

echo 
$texto// hay que mirar el html que sale, no el final screen

?>
Mucha gracias! :)