Hoy traigo un tema el cual llevo dando vueltas y vueltas y no doy con la forma.
Tengo un fichero .txt el cual leo y quiero buscar una cadena en concreto o palabra, y que todas las frases que tengan esa palabra se almacenen en un fichero a parte.
Es decir tengo un texto como el siguiente contenido en un .txt
Código:
La palabra a buscar es: ejemplo.Mis palabras de ejemplo(;)palabras de ejemplos(;)nuevo ejemplo(;)termino sin ejemplo
Como ven el .txt tiene cada frase separada por un (;) por lo que es más fácil encontrar las palabras a separar, aunque no lo he logrado :( .
El resultado de la búsqueda daría un nuevo fichero .txt con estos datos.
Código:
Eso sería el resultado que quiero, con este resultado luego ejecutaría otro script que tengo ya hecho, para sustituir una palabra en todas las frases separadas por (;)Mis palabras de ejemplo(;)nuevo ejemplo(;)termino sin ejemplo
¿Alguna idea de como realizar esto y buscar esa palabra en un .txt? Y almacenar esas FRASES que contengan la palabra en otro .txt.
Dejo algo de prueba pero no consigo mucho.
Código PHP:
$nombre_fichero = 'keys.txt';
$nombre_fichero = utf8_decode ($nombre_fichero);
$contenido = file_get_contents($nombre_fichero); /*carga contenido*/
$cadena_buscada = "ejemplo";
/*aqui supongo luego de buscar la cadena QUE NO LO HAGO, guardaría el resultado en $contenido y lo pasaría separado por (;) */
$contenido = explode("(;)", $nombre_fichero);
// output final.
$output = array_unique(explode('(;)', $contenido)); /* aqui aun me falta cargar de solo las frases que tengan la palabra buscada */
file_put_contents($nombre_fichero, implode('(;)', $output), LOCK_EX);
Seguiré intentando.
Espero me puedan ayudar un saludo a todos!!!