Foros del Web » Programando para Internet » PHP »

Cadena de texto a variables (obtener y buscar texto)

Estas en el tema de Cadena de texto a variables (obtener y buscar texto) en el foro de PHP en Foros del Web. Hola! Estoy investigando para desarrollar un script que tome una seria de datos desde texto plano, me explico; Tengo un texto como este USUARIO 01 ...
  #1 (permalink)  
Antiguo 19/01/2010, 13:38
 
Fecha de Ingreso: mayo-2008
Mensajes: 39
Antigüedad: 15 años, 11 meses
Puntos: 1
Cadena de texto a variables (obtener y buscar texto)

Hola!

Estoy investigando para desarrollar un script que tome una seria de datos desde texto plano, me explico;

Tengo un texto como este

USUARIO 01 REGISTRO 10/11/09 PRIVILEGIOS 100 ULTIMOACCESO 09923

Bien.. lo que no consigo sacar es como extraerlo, digamos por ejemplo en variables. Los registros cambian pero los nombre no.
Estoy probando con preg_match pero no me queda claro, también he hecho unas pruebas con srt_replace añadiendo a los nombres en mayúsculas unas unos limitadores del estilo; =USUARIO= para saber cuando empieza o cambia un registro.

Lo que pretendo es mas o menos extraer los registro y su contenido en variables:
$USUARIO = '01';

Pruedo buscar y extraer bloques de texto contando los espacios? de este modo podria almacenarlos en variables mas facilmente

Alguna idea/refenrecia?
Gracias de antemano!
  #2 (permalink)  
Antiguo 19/01/2010, 13:48
 
Fecha de Ingreso: enero-2010
Mensajes: 152
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: Cadena de texto a variables (obtener y buscar texto)

Necesitaras [URL="http://mx.php.net/manual/en/function.fgets.php"]fgets()[/URL] para leer linea por linea el archivo de texto.

Dado que está separado por espacios cada campo, puedes usar explode() para convertir cada línea en un array. Si vas a volver a escribir en el archivo supongo que tendrás que borrar el archivo anterior y escribir uno nuevo.
  #3 (permalink)  
Antiguo 19/01/2010, 13:54
 
Fecha de Ingreso: mayo-2008
Mensajes: 39
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: Cadena de texto a variables (obtener y buscar texto)

Cita:
Iniciado por paynalton Ver Mensaje
Necesitaras [URL="http://mx.php.net/manual/en/function.fgets.php"]fgets()[/URL] para leer linea por linea el archivo de texto.

Dado que está separado por espacios cada campo, puedes usar explode() para convertir cada línea en un array. Si vas a volver a escribir en el archivo supongo que tendrás que borrar el archivo anterior y escribir uno nuevo.
Gracias!!!
Esta todo en la misma linea, los datos ya los he obtenido via fgets, simplemente creo que hay que ir cogeniendo datos por cada espacio y lo almacene en un array para luego escribir en un archivo las variables;
$USUARIO = '2120';
$REGISTRO = '09';

etc.....
Tambien he eliminado las letras pero con preg_replace('/[A-Z_]*/', '', $cadena);

ideas? muchas gracias!
  #4 (permalink)  
Antiguo 19/01/2010, 14:22
 
Fecha de Ingreso: enero-2010
Mensajes: 62
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Cadena de texto a variables (obtener y buscar texto)

algo como esto?

Código PHP:
<html>

<head>
  <title></title>
</head>


<?php

$texto 
=  "archivo_de_texto.txt";
$handle = @fopen($texto"r");



if (
$handle) {  ?>

    <TABLE style="border: 2px dotted gray;margin-right:auto;margin-left:auto;">
    <tr style="text-align:center;background-color:#4a6890;color:#fff;">
    <td width="61">USUARIO</td>
    <td width="61">REGISTRO</td>
    <td width="61">PRIVILEGIOS</td>
    <td width="61">ULTIMOACCESO</td>

  </tr>
    <?
    
while (!feof($handle)) {
        
$buffer fgets($handle);

          
?>
                <? $usuario substr("$buffer",73);
                   
$registro substr("$buffer",208);
                   
$privilegios substr("$buffer",413);
                   
$ultimoacceso substr("$buffer",585);
                   
?>
<TR>
                <TD><? echo $usuario "\n";?></TD>
                <TD><? echo $registro "\n"?></TD>
                <TD><? echo $privilegios "\n"?></TD>
                <TD><? echo $ultimoacceso "\n"?></TD>
                 </TR>
           <?

                 
}
    
fclose($handle);  ?>
     </TABLE>
                       <? echo '<br>'?>

<? ?>
</body>
</html>
  #5 (permalink)  
Antiguo 19/01/2010, 16:46
 
Fecha de Ingreso: mayo-2008
Mensajes: 39
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: Cadena de texto a variables (obtener y buscar texto)

Gracias nat_chan07!!

Voy a implementarlo, aunque con la funcion global substr el problema trata basicamente da la extensibilidad de los datos, porque el texto plano puede variar de longitud o cambiar de estructura, de todos modos, para lo que prentendo por ahora esta bien.
gracias de nuevo!

Etiquetas: variables, cadenas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:41.