PHP - Metodo para sustituir una palabra de un archivo txt

   
Vista:

Metodo para sustituir una palabra de un archivo txt

Publicado por Daniel Ramos (2 intervenciones) el 15/06/2016 06:02:53
Buenas....... Quisiera saber si existe algun metodo en php para sustituir una palabra (uso str_replace.... pero sustituye todas las concidencias.....)

Ejemplo de lo que quiero hacer

TEXTO

lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador

Quisiera sustituir el EJEMPLO que esta en negrita (poder manipular cualquier posición de la palabra).... si no se puede en php.... quisiera saber con que lenguaje puedo lograr esto (necesito que sea en texto plano).... de antemano Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Metodo para sustituir una palabra de un archivo txt

Publicado por xve (5515 intervenciones) el 15/06/2016 08:45:19
Hola Daniel, aquí te muestro un simple ejemplo que sustituya la palabra EJEMPLO que se repite 12 veces... es decir la 12ª vez que aparece.

1
2
3
4
5
6
7
8
9
10
11
<?php
$cadena="lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador";
 
$palabra="EJEMPLO";
$pos=0;
for($i=0;$i<12;$i++)
{
	$pos=strpos($cadena,$palabra,$pos+1);
}
echo substr($cadena,0,$pos)."NUEVA PALABRA".substr($cadena,$pos+strlen($palabra));
?>

Coméntanos si te sirve, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Metodo para sustituir una palabra de un archivo txt

Publicado por Daniel Ramos (2 intervenciones) el 15/06/2016 10:21:14
Muchas gracias..... lo probare a fondo y comento.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip

Metodo para sustituir una palabra de un archivo txt

Publicado por kip (564 intervenciones) el 16/06/2016 07:52:39
Hola, hice un codigo que convierte el texto en un array y hace una busqueda de la palabra hasta cierta posicion, luego la reemplaza y vuelve a convertir a string el array, otra solucion ademas de la xve que es muy buena por cierto.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$texto = "lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador lapiz pincel EJEMPLO mochila lapiz cuaderno borrador EJEMPLO lapiz pincel mochila EJEMPLO lapiz cuaderno borrador";
 
$array_texto = explode(" ",$texto);
$sum = 0;
 
for ($i=0,$size=count($array_texto);$i<$size;$i++){
    if( $array_texto[$i] == 'EJEMPLO'){ // busco la palabra
        $sum = 1 + $sum; // sumo 1 por cada coincidencia en el array
        if ($sum == 12){ //verifico las veces que se ha repetido la palabra
            $array_texto[$i]= '<b>REEMPLAZO!!!!!!!!</b>'; // una vez que llega a repetirse 12 veces se reemplaza en aquella posicion
        }
    }
}
 
$nuevo_texto=implode(' ',$array_texto); //transformo a string el array 
echo '<p>'.$texto.'</p></br>'; // muestro el texto sin modificar
echo '<p>'.$nuevo_texto.'</p></br>'; //muestro el texto modificado
?>

Espero te sirva tambien

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar