Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Mensaje iniciado por: Psyke1 en 1 Junio 2010, 01:03 AM

Título: Expresiones Regulares
Publicado por: Psyke1 en 1 Junio 2010, 01:03 AM
Hola, os cuento:
Me gustaria saber un poco mas de las expresiones regulares, he mirado ejemplos por ahi pero no me acabo de aclarar que digamos...  :-\
Estoy abierto a recomendaciones y me gustaria que me pusierais un ejemplo de como se saca X caracter de una cadena utilizando E.R.  :)
Son tan complicadas como parecen¿?  :(

Gracias!  ;)
Título: Re: Expresiones Regulares
Publicado por: leogtz en 1 Junio 2010, 01:14 AM
Depende del lenguaje que utilices.
Título: Re: Expresiones Regulares
Publicado por: Psyke1 en 1 Junio 2010, 01:25 AM
VB
Título: Re: Expresiones Regulares
Publicado por: ~ Yoya ~ en 1 Junio 2010, 01:29 AM
el problema esta en entenderla como funcionan, después que la entiendes ps ya lo demás no están dificir...
Las expresiones regulares aparte de que sirven para capturar, tambien para verificar.

y son muy parecidas en los distintos lenguajes...

Código (perl) [Seleccionar]
#!/usr/bin/perl -w

$txt = "Hola quieres aprender a usar Expresiones regulares??";

if($txt =~ /(Hola)\s\w*\s\w*\s[a]\s\w*?\s(Expresiones)\s([a-z?]+)/){
print "$1\n$2\n$3\n";
}

exit;


Salida:
yoya@Yoya-desktop:~/Escritorio$ perl a.pl
Hola
Expresiones
regulares??


Código (php) [Seleccionar]
<?php

$txt 
"Hola quieres aprender a usar Expresiones regulares??";
preg_match("/(Hola)\s\w*\s\w*\s[a]\s\w*?\s(Expresiones)\s([a-z?]+)/"$txt$captura);
echo 
"$captura[1]\n$captura[2]\n$captura[3]";

?>


Salida:
yoya@Yoya-desktop:~/Escritorio$ php a.php
Hola
Expresiones
regulares??


Título: Re: Expresiones Regulares
Publicado por: Psyke1 en 1 Junio 2010, 01:43 AM
Agradezco tu esfuerzo  ;-), pero sigo sin entenderlo bien...  :P
Me sabrias poner un ejemplo de como se saca el caracter "&" de una cadena utilizando E.R. , por ejemplo... Te lo agradeceria mucho... :silbar:
Ten en cuenta que no tengo ni idea de esto, como no me expliques un poco lo que haces en la ER... :)

Gracias! ;D
Título: Re: Expresiones Regulares
Publicado por: ~ Yoya ~ en 1 Junio 2010, 01:46 AM
desde hace no entiendo que tratas de decir con ER
Título: Re: Expresiones Regulares
Publicado por: Psyke1 en 1 Junio 2010, 01:50 AM
 :xD
Lo siento...  :)
ER = Expresiones Regulares

Salu2! ;D
Título: Re: Expresiones Regulares
Publicado por: ~ Yoya ~ en 1 Junio 2010, 02:01 AM
Se le llama Regexp no ER....
Aqui esta:
Código (perl) [Seleccionar]
#!/usr/bin/perl -w

$txt = "xDD&xxDS";#Cadena de texto que contiene el caracter & que queremos obtener
if($txt =~ m/(&)/){
print $1, "\n";
}
exit;

La expresion que uso es: /(&)/.
yoya@Yoya-desktop:~/Escritorio$ perl a.pl
&


Y tambien para comprovar....

Código (perl) [Seleccionar]
#!/usr/bin/perl -w

my $var1 = 'aojojaono218asada';
my $var2 = 'aojosaasonon0548';

if($var1 =~ m/\d/){print "Cadena->$var1 => Existen numero en la primera cadena\n"}
else{print "no existe numero en la primera cadena\n";}

if($var1 =~ m/[A-Z]/){print "Cadena->$var2 =>Existen caracter mayuscula en la cadena\n";}
else{print "Cadena->$var2 => No existe caracter en mayuscula en la cadena\n";}


Salida:
yoya@Yoya-desktop:~/Escritorio$ perl a.pl
Cadena->aojojaono218asada => Existen numero en la primera cadena
Cadena->aojosaasonon0548 => No existe caracter en mayuscula en la cadena

Título: Re: Expresiones Regulares
Publicado por: Psyke1 en 1 Junio 2010, 02:07 AM
Ok ahora si que voy entendiendo algo! ;-) ;-) ;-) ;-)
Gracias ~ Yoya ~ ! :-*
Título: Re: Expresiones Regulares
Publicado por: SeC en 1 Junio 2010, 02:12 AM
Al parecer no has mirado en Wikipedia (http://es.wikipedia.org/wiki/Expresi%C3%B3n_regular), ahí tienes todo lo que necesitas, y mira los enlaces externos que aparecen .. con eso debería quedarte claro o al menos tendrás una base.