Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/01/2015, 13:16
Avatar de HackID1
HackID1
 
Fecha de Ingreso: febrero-2013
Ubicación: En Update
Mensajes: 492
Antigüedad: 11 años, 9 meses
Puntos: 17
Pregunta Buscar cadena en Txt y almacenar frase coincidentes en otro fichero

Que tal Foreros!...

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:
Mis palabras de ejemplo(;)palabras de ejemplos(;)nuevo ejemplo(;)termino sin ejemplo
La palabra a buscar es: 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:
Mis palabras de ejemplo(;)nuevo ejemplo(;)termino sin ejemplo
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 (;)

¿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_ficheroimplode('(;)'$output), LOCK_EX); 
Pienso me falta un foreach para recorrer cada una de las palabras buscando con una conicidencia en un IF. pero no doy con ello.

Seguiré intentando.

Espero me puedan ayudar un saludo a todos!!!
__________________
Puntuar +1 es buena forma de dar las gracias. :P
Your Time is limited, so don't waste it living someone else´s life.
Por: HackID1