next up previous contents index practicapracticaPP2moodleLHPmoodlepserratacpanmodulospauseperlgoogleetsiiullpcgull
Sig: El Modificador /g Sup: Expresiones Regulares Ant: La opción /m Err: Si hallas una errata ...

La opción /s

La opción /s hace que . se empareje con un \n. Esto es, casa con cualquier carácter.

Veamos otro ejemplo, que imprime los nombres de los ficheros que contienen cadenas que casan con un patrón dado, incluso si este aparece disperso en varias líneas:

   1 #!/usr/bin/perl -w
   2 #use: 
   3 #smodifier.pl 'expr' files
   4 #prints the names of the files that match with the give expr
   5 undef $/; # input record separator
   6 my $what = shift @ARGV;
   7 while(my $file = shift @ARGV) {
   8   open(FILE, "<$file");
   9   $line =  <FILE>;
  10   if ($line =~ /$what/s) {
  11     print "$file\n";
  12   }
  13 }

Ejemplo de uso:

> smodifier.pl 'three.*three' double.in split.pl doublee.pl
double.in
doublee.pl

Vea la sección 4.20 para ver los contenidos del fichero double.in. En dicho fichero, el patrón three.*three aparece repartido entre varias líneas.


next up previous contents index practicapracticaPP2moodleLHPmoodlepserratacpanmodulospauseperlgoogleetsiiullpcgull
Sig: El Modificador /g Sup: Expresiones Regulares Ant: La opción /m Err: Si hallas una errata ...
Casiano Rodríguez León
2006-02-21