O documento apresenta um resumo sobre Perl Moderno, abordando tópicos como:
1) Expressões regulares, com explicações sobre os operadores m//, modificadores e quantificadores;
2) Tratamento de exceções com Try::Tiny e tratamento de erros;
3) Manipulação de dados como arquivos, datas e logs.
48. a? 'a', 0 ou 1 vezes
a* 'a', 0 ou mais vezes
a+ 'a', 1 ou mais vezes
a{n} 'a', exatamente n vezes
a{n,} 'a', n ou mais vezes
a{n,m} 'a', mínimo n, máximo m
Perl Moderno
49. my $frase = 'o gato no mato';
if ( $frase =~ m/(.*)ato/ ) {
say $1;
}
Perl Moderno
50. my $frase = 'o gato no mato';
if ( $frase =~ m/(.*)ato/ ) {
say $1;
}
o gato no m
Perl Moderno
51. quantificadores são “gulosos”
por padrão. Adicione um '?'
após o quantificador para
casar o mínimo possível
Perl Moderno
52. guloso
a? 'a', 0 ou 1 vezes
a* 'a', 0 ou mais vezes
a+ 'a', 1 ou mais vezes
a{n} 'a', exatamente n vezes
a{n,} 'a', n ou mais vezes
a{n,m} 'a', mínimo n, máximo m
Perl Moderno
53. não guloso
a?? 'a', 0 ou 1 vezes
a*? 'a', 0 ou mais vezes
a+? 'a', 1 ou mais vezes
a{n}? 'a', exatamente n vezes
a{n,}? 'a', n ou mais vezes
a{n,m}? 'a', mínimo n, máximo m
Perl Moderno
54. my $frase = 'o gato no mato';
if ( $frase =~ m/(.*)ato/ ) {
say $1;
}
Perl Moderno
55. my $frase = 'o gato no mato';
if ( $frase =~ m/(.*?)ato/ ) {
say $1;
}
Perl Moderno
56. my $frase = 'o gato no mato';
if ( $frase =~ m/(.*?)ato/ ) {
say $1;
}
og
Perl Moderno
57. exercício
Faça um programa que leia uma
frase e, se houver uma hora no
formato “HH:MM”, diga a hora
encontrada e quantos segundos
ela representa
Perl Moderno
59. m{
^ # início da string
[.+] # '.' ou '+'
.+ # um ou mais caracteres
(UFww) # sigla da universidade, em $1
s*:s* # ':', com 0 ou + espaços
(S.+) # nome do curso, em $2
$ # fim da string
}x
Perl Moderno
60. m{
^ # início da string
[.+] # '.' ou '+'
.+ # um ou mais caracteres
(?<univ> UFww) # sigla da universidade
s*:s* # ':', com 0 ou + espaços
(?<curso>S.+) # nome do curso
$ # fim da string
}x
Perl Moderno
67. expressões Regulares são extremamente
poderosas, com backreferences,
lookahead/behind, reposicionamento,
e muito mais. Para mais detalhes, veja
perlrequick, perlretut e perlre
Perl Moderno
68. exercício
Modifique o programa das
siglas para ler de um arquivo
e exibir na tela o conteúdo,
trocando todas as
ocorrências por “UFRJ”
Perl Moderno