Buscar frases que contengan una palabra con expresiones regulares

  • Autor Autor engonga
  • Fecha de inicio Fecha de inicio
engonga

engonga

Dseda
Verificación en dos pasos activada
Verificado por Whatsapp
hola tengo un listado de frases

Enviar mail
Cómo enviar un mail
enciar una carta
errores de un mail
cosas que no tienes que hacer
Mil emails
Enviar amails
collares de perros
fotos de perros
fotos de perros enviadas por email
email efectivo

No se como hacer una expresion regular que me saque las fraes que contengan la palabra email (las que están en negrita)
 
Podrías explicar un poco mejor lo que deseas hacer? Creo que no esta muy claro
 
Solución con función stristr

Ahí te paso una solución, sin usar expresiones regulares. Espero que te sirva.

PHP:
function buscar_palabra($palabra, $frases){
    $resultado = array();
    foreach($frases as $frase){
        if (stristr($frase, $palabra) === FALSE){
            $resultado[] = $frase;
        }
    }
    return $resultado;
}

$muchas_frases[] = 'Enviar mail';
$muchas_frases[] = 'Cómo enviar un mail';
$muchas_frases[] = 'enciar una carta';
$muchas_frases[] = 'errores de un mail';
$muchas_frases[] = 'cosas que no tienes que hacer';
$muchas_frases[] = 'Mil emails';
$muchas_frases[] = 'Enviar amails';
$muchas_frases[] = 'collares de perros';
$muchas_frases[] = 'fotos de perros';
$muchas_frases[] = 'fotos de perros enviadas por email';
$muchas_frases[] = 'email efectivo';

$frases_sin_email = buscar_palabra('email', $muchas_frases);

echo '<pre>';
print_r($frases_sin_email);
echo '</pre>';
 
No entendí bien tu "que me saque", quieres conseguir solo las frases que tienen la palabra o quieres eliminar esas?

Bueno, siguiendo el ejemplo del compañero de tener las frases en un array:

PHP:
$emailPhrase = array_filter($muchas_frases, function($str) {
    return (stripos($str, 'email') !== false);
});

var_dump($emailPhrase);

esto te daría solo las que contienen la palabra, en caso de que lo que quieres es lo contrario solo cambia !== por ===.

Saludos.
 
Atrás
Arriba