Comunidad de diseño web y desarrollo en internet online

Busquedas en Archivos y variables

Citar            
MensajeEscrito el 18 Abr 2007 08:49 am
Hola buenas, tenia un cierto problema.
Necesitaba leer d un fichero o una variable, unos datos que estan entre una cadena de caracteres predefinida por ejemplo <span height="200">variable que quiero cojer</span>.....<span height="200">Otra variable que quiero cojer</span>

Que es mejor para manejar esto tener el texto en un fichero o en una cadena?

Como podria hacer para conseguir realizar la operacion.?

a ver si alguien sabe, como podria hacer, gracias.

Por sk8erboi

78 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 18 Abr 2007 01:55 pm
1. Es mejor tenerla en un fichero.

2. Usa una expresión regular para eso.

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox
Citar            
MensajeEscrito el 19 Abr 2007 07:31 am
en el emax aun controlaba un poco alli se podia cojer un texto y indicarle la expresion
por ejemplo \(.*aaa)\(.*)\(bbb) y luego remplazarlo todo por \1 \2 o \3 y siendo cada \x el resultado de lo obtenido en la expresion de arriba, pudiendote asi desacer d lo q no t interesa, pero no se si se puede hacer asi en php.


He encontrado esto q parece muy util, pero como no acabo d ver bien lo d las expresiones regulares no me vale del todo

Código :

<?php{
$html="<b>1</b><a href=1.html>haga clic aqui</a><b>2</b><a href=2.html>haga clic aqui</a><b>3</b><a href=3.html>haga clic aqui</a>";
                  
$pat = "|href\=\"?'?`?([[:alnum:]:?=&@/;._-]+)\"?'?`?|i";

preg_match_all($pat, $html, $matches);

echo '<pre>';
    print_r($matches);
echo '</pre>';
}?> 


esto da como resultado

Código :

Array
(
    [0] => Array
        (
            [0] => href=1.html
            [1] => href=2.html
            [2] => href=3.html
        )

    [1] => Array
        (
            [0] => 1.html
            [1] => 2.html
            [2] => 3.html
        )

)



lo q no entiendo es como es q hace 2 arrays, imagino q hay 2 expresiones regulares o algo asi. no?

Por sk8erboi

78 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 19 Abr 2007 09:06 am
la cosa seria q alguna expresion regular q me diese como resultado d este texto

Código :

<tr><td class="textoblanco" nowrap="nowrap" colspan="2" bgcolor="#FFC65A"><b><img src="../imagenes/pixel.gif" alt="" border="0" /><span>YYYYY</span></b></td></tr>
<tr><td class="textorojo" nowrap="nowrap" bgcolor="#FFFFFF" width="21%"><span>Localización</span></td><td class="textogris" nowrap="nowrap" bgcolor="#FFFFFF" width="79%"><span>ZZZZZZZZ</span></td>
   </tr><tr>
      <td class="textorojo" nowrap="nowrap" bgcolor="#FFFFFF" width="21%"><span>Superficie construida</span></td><td class="textogris" nowrap="nowrap" bgcolor="#FFFFFF" width="79%"><span>XXXXXXX<sup>2</sup></span></td>
   </tr>


el YYYYY, ZZZZZZZZ y el XXXXXXX

Por sk8erboi

78 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 19 Abr 2007 09:35 am
por ejemplo esto:

Código :

<?php
// obtener el nombre de host de una URL
preg_match_all("/www.*\.html/", "http://www.php.net/index.html   gfdg http://www.pfdgfgp.net/index.html  http://www.dfg45.net/index.html", $coincidencias);

echo '<pre>';
    print_r($coincidencias);
echo '</pre>';
?> 


me da como resultado

Código :

Array
(
    [0] => Array
        (
            [0] => www.php.net/index.html   gfdg http://www.pfdgfgp.net/index.html  http://www.dfg45.net/index.html
        )

)

yo queria q me diese

Código :

Array
(
    [0] => Array
        (
            [0] =>www.php.net/index.html   
            [1] =>www.pfdgfgp.net/index.html  
            [2] =>www.dfg45.net/index.html
        )
)


La cuestion es q cuando le indico el .* coje todo lo q ve, yo pretendia q acabase cunado llegase al encontrar un html

Por sk8erboi

78 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 19 Abr 2007 01:17 pm
corrige la expresión regular:

Código :

preg_match_all("/www.*?\.html/", "http://www.php.net/index.html   gfdg http://www.pfdgfgp.net/index.html  http://www.dfg45.net/index.html", $coincidencias);


incluso yo usaria + y no * así

Código :

preg_match_all("/www.+?\.html/", "http://www.php.net/index.html   gfdg http://www.pfdgfgp.net/index.html  http://www.dfg45.net/index.html", $coincidencias);


saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.