Foros del Web » Programación para mayores de 30 ;) » Programación General »

Eliminar comillas

Estas en el tema de Eliminar comillas en el foro de Programación General en Foros del Web. Hola, estoy iniciandome en perl y queria consultarles si pueden decirme como eliminar las comillas de la siguiente expresion: <img alt="Hola" src="Holas.jpg"/> De esta expresion ...
  #1 (permalink)  
Antiguo 28/02/2007, 16:04
 
Fecha de Ingreso: febrero-2007
Mensajes: 33
Antigüedad: 17 años, 2 meses
Puntos: 0
Eliminar comillas

Hola, estoy iniciandome en perl y queria consultarles si pueden decirme como eliminar las comillas de la siguiente expresion:
<img alt="Hola" src="Holas.jpg"/>

De esta expresion yo solo quiero imprimir el Hola, sin las comillas.


Gracias...
  #2 (permalink)  
Antiguo 01/03/2007, 02:47
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 18 años
Puntos: 11
Re: Eliminar comillas

Código:
$x = '<img alt="Hola" src="Holas.jpg"/>';
$x =~ m/alt="(.*?)"/;
print "$1\n";
  #3 (permalink)  
Antiguo 01/03/2007, 06:56
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 2 meses
Puntos: 90
Re: Eliminar comillas

Hola agus211, bienvenido/a a los foros !!! este es tu primer mensaje !!!

ahí jferrero te dió una solución muy buena con expresiones regulares, solo te quería comentar que en www.perlenespanol.com tienes 2 tutoriales muy fáciles para entender bien las expresiones regulares...

Espero que te sirvan

Saludos
__________________
Esteban Quintana
  #4 (permalink)  
Antiguo 01/03/2007, 07:22
 
Fecha de Ingreso: febrero-2007
Mensajes: 33
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Eliminar comillas

Hola, gracias por el codigo, ahora lo voy a implementar, y gracias por la bienvenida, la verdad que estoy muy contento de haber encontrado este foro, me parece que es muy bueno tener un recurso en español de ayuda...GRACIAS!!!!
  #5 (permalink)  
Antiguo 01/03/2007, 07:42
 
Fecha de Ingreso: febrero-2007
Mensajes: 33
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Eliminar comillas

No quiero abusar, pero en la red vi un codigo que me intereso mucho para el tema de parseo de htmls, el tema es que no esta explicado, si alguien puede darme una breve explicacion le voy a estar SUPER AGRADECIDO...

$page tendria el codigo html...

$p = HTML::Parser->new(api_version => 3);
$p->handler( start => \&start_form, "tagname,self,text");
$p->parse($page) || die $!;

sub start_form {
($tagname, $self, $text) = @_;

return if $tagname ne 'form';

$self->handler(start => undef);
$self->handler(default => \&save_form, "text");
$self->handler(end => \&end_form, "tagname,self,text");

push @forms, '';
save_form($text);
}

sub save_form {
$forms[-1] .= shift;
}

sub end_form {
($tagname, $self, $text) = @_;

save_form($text);

if ($tagname eq 'form') {
$self->handler(start => \&start_form, "tagname,self,text");
$self->handler(default => undef);
$self->handler(end => undef);
}
}
  #6 (permalink)  
Antiguo 01/03/2007, 08:49
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 2 meses
Puntos: 90
Re: Eliminar comillas

Pues está usando el módulo HTML::Parser, en PERL tienes montones de módulos que te dan más funcionalidad...

Para verlos checkea el search.cpan.org

http://search.cpan.org/~gaas/HTML-Parser-3.56/Parser.pm acá tienes la explicación del HTML:Parser...

Simplemente usa esas funciones...

Saludos
__________________
Esteban Quintana
  #7 (permalink)  
Antiguo 01/03/2007, 10:34
 
Fecha de Ingreso: febrero-2007
Mensajes: 33
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Eliminar comillas

Preguntilla, si estoy haciendo un foreach de un vector, por ejemplo:

foreach (@vector) {
}

y quiero decir que si $vector(posicion actual del foreach) = "Jose" entonces sume dos posiciones a la posicion actual.

O sea, si jose esta en la posicion actual numero 3 del vector, quiero que la proxima posicion a evaluar del foreach sea 5 y no 4.

Gracias!.

push(@a,"alberto");
push(@a,"pedro");
push(@a,"jose");
push(@a,"nahuel");
push(@a,"miguel");

foreach $i ( 0..$#a ) {
if ($a[$i] eq "jose") {
$i=4;
print $i;
}else{
print $i;
}

Me imprime 01434.

Esto es lo que yo hice, pero no cambia el indice...

Última edición por Agus211; 01/03/2007 a las 10:55
  #8 (permalink)  
Antiguo 01/03/2007, 15:45
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 2 meses
Puntos: 90
Re: Eliminar comillas

que es 0..$#a ???

tienes que hace foreach my $i (@a){

}

Saludos
__________________
Esteban Quintana
  #9 (permalink)  
Antiguo 01/03/2007, 17:57
 
Fecha de Ingreso: febrero-2007
Mensajes: 33
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Eliminar comillas

Oks, gracias por responder...

entonces seria:

foreach $i ( @a ) {
if ($a[$i] eq "jose") {
$i=$i+2;
print $i;
}else{
print $i;
}





El $i=$i+2, imprime el valor 4, pero cuando vuelve a hacer el ciclo del foreach, i vale 3 en vez de 5 como deberia, como hago que no pase eso?
  #10 (permalink)  
Antiguo 02/03/2007, 06:27
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 2 meses
Puntos: 90
Re: Eliminar comillas

en vez de usar un foreach probemos mejor con un for:

Código:
my $i = 0;
for ($i = 0; $i < @a; $i++){
   ...
}
Espero que te sirva

Saludos
__________________
Esteban Quintana
  #11 (permalink)  
Antiguo 02/03/2007, 08:12
 
Fecha de Ingreso: febrero-2007
Mensajes: 33
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Eliminar comillas

Gracias, funciona barbaro!.
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 18:26.