POD2-IT
view release on metacpan or search on metacpan
IT/perlrequick.pod view on Meta::CPAN
restituisce falso.
Qui di seguito alcuni esempi:
$x = "Time to feed the cat!"; [E` ora di dar da mangiare al gatto, NdT]
$x =~ s/cat/hacker/; # $x contiene "Time to feed the hacker!"
$y = "'quoted words'"; [parole tra doppie virgolette, NdT]
$y =~ s/^'(.*)'$/$1/; # elimina gli apici singoli,
# $y contiene "quoted words"
Con l'operatore C<s///> ,le variabili matchate C<$1>, C<$2>, ecc.
sono immediatamente disponibili per l'uso nell'espressione di sostituzione.
Con il modificatore globale, C<s///g> cercherE<agrave> e sostituirE<agrave> tutte le
occorrenze della regex nella stringa:
$x = "I batted 4 for 4"; [Ho fatto 4 battute su 4, NdT]
$x =~ s/4/four/; # $x contiene "I batted four for 4"
$x = "I batted 4 for 4";
$x =~ s/4/four/g; # $x contiene "I batted four for four"
Il modificatore di valutazione C<s///e> pone un C<eval{...}> attorno alla stringa
di sostituzione e il risultato valutato viene sostituito alla sottostringa matchata.
Ecco alcuni esempi:
# inverte tutte le lettere in una stringa
$x = "the cat in the hat";
$x =~ s/(\w+)/reverse $1/ge; # $x contains "eht tac ni eht tah"
# converte una percentuale in decimale
$x = "A 39% hit rate"; [Una percentuale di battuta del 39%, NdT]
$x =~ s!(\d+)%!$1/100!e; # $x contains "A 0.39 hit rate"
L'ultimo esempio mostra che C<s///> puE<ograve> usare altri delimitatori, quali
C<s!!!> e C<s{}{}>, ed anche C<s{}//>. Se vengono utilizzate le virgolette singole
C<s'''>, allora la regex e la sostituzione sono trattate come stringhe single quoted.
[delimitate da virgolette singole, NdT]
=head2 L'operatore split
C<split /regex/, stringa> divide la C<stringa> in una lista di sottostringhe
e restituisce tale lista. La regex determina la sequenza di caratteri
per i quali la C<stringa> viene divisa. Per esempio, per dividere una stringa in parole,
si usi
$x = "Calvin and Hobbes";
@word = split /\s+/, $x; # $word[0] = 'Calvin'
# $word[1] = 'and' [e, NdT]
# $word[2] = 'Hobbes'
Per estrarre una lista di numeri separati da virgola, si usi
$x = "1.618,2.718, 3.142";
@const = split /,\s*/, $x; # $const[0] = '1.618'
# $const[1] = '2.718'
# $const[2] = '3.142'
Se viene usata la regex vuota C<//>, la stringa viene divisa in singoli caratteri.
Se la regex ha dei raggruppamenti, allora la lista prodotta contiene la sottostringa
matchata e anche gli elementi divisori:
$x = "/usr/bin";
@parts = split m!(/)!, $x; # $parts[0] = ''
# $parts[1] = '/'
# $parts[2] = 'usr'
# $parts[3] = '/'
# $parts[4] = 'bin'
Dato che il primo carattere di $x matcha la regex, C<split> prepone
un elemento iniziale vuoto alla lista.
=head1 BUG
Nessuno.
=head1 SI VEDA ANCHE
Questa E<egrave> solo una guida rapida. Per un corso piE<ugrave> approfondito sulle
regex, guardate L<perlretut> e per la pagina di reference, guardate L<perlre>.
=head1 AUTORE E COPYRIGHT
Copyright (c) 2000 Mark Kvale
Tutti i diritti riservati.
Questo documento puE<ograve> essere distribuito secondo gli stessi termini del Perl.
=head2 Riconoscimenti
L'autore vuole ringraziare Mark-Jason Dominus, Tom Christiansen,
Ilya Zakharevich, Brad Hughes e Mike Giroux per tutti i loro utili commenti.
=head1 TRADUZIONE
=head2 Versione
La versione su cui si basa questa traduzione E<egrave> ottenibile con:
perl -MPOD2::IT -e print_pod perlrequick
Per maggiori informazioni sul progetto di traduzione in italiano si veda
L<http://pod2it.sourceforge.net/> .
=head2 Traduttore
Traduzione a cura di dree.
=head2 Revisore
Revisione a cura di Marco Allegretti.
=cut
( run in 2.639 seconds using v1.01-cache-2.11-cpan-71847e10f99 )