Tienes un par de fallos sintácticos. No se escribe
@post[$i], sino
$post[$i]. Cuando se accede a un escalar siempre hay que usar el sigilo '$'.
En cuanto al problema, se puede resolver de varias formas.
Using perl Syntax Highlighting
use feature 'say';
sub UltimosPost {
my @post = split /rel="nofollow">/, $_[0];
for (@post) {
my @tema = split /<\/a>/;
say $tema[0];
}
}
Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4
Quizás con una expresión regular sea más rápido:
Using perl Syntax Highlighting
use feature 'say';
sub UltimosPost {
while ($_[0] =~ /"nofollow">(.+?)</g) {
say $1;
}
}
Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4
Incluso, si sabemos que $_[0] solo contiene un enlace <a>, se puede reducir aún más:
Using perl Syntax Highlighting
use feature 'say';
sub UltimosPost {
$_[0] =~ /"nofollow">(.+?)</;
say $1;
}
Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4
Depende un poco del formato que tenga $_[0].