Here is one shot.
Wags
============================================================================
=
Script starts after this line.
#!perl -w
y @MyInfo = ();
while ( <DATA> ) {
chomp;
next if ( /^\s*$/ ); # Bypass any blanklines
if ( ! /^\"([^"]+)\"\.\s+([^]+);(.+)/i ) { # If line starts w/ " then
grab all between " into $1
# Then should be
". and one or more spaces
# pull all that is
not a : into $2
# Then a ; and the
rest into $3
printf "Expecting input as \"quote\". author;comments, but
received\n<$_>\n";
next;
}
push( @MyInfo, [ $1,$2,$3]); # push into #MyInfo as double
index array
# [x][0] = quote
# [x][1] = Author
# [x][2] =
Comments
}
for(my $MyId=0;$MyId<=$#MyInfo;$MyId++) { # pull out the data and
print
printf "Quote: %-s\nAuthor: %-s\nComments: %-s\n", $MyInfo[$MyId][0],
$MyInfo[$MyId][1],
$MyInfo[$MyId][2];
}
__DATA__
"Hablar es el arte de sofocar e interrumpir el pensamiento". Thomas Carlyle
(1795-1881); historiador y ensayista escoc�s.
"Se aprende m�s por lo que la gente habla entre s� o por lo que
sesobrentiende, que plante�ndose preguntas". Rudyard Kipling (1865-1936);
escritor ingl�s, de origen indio.
"Hay palabras que suben como el humo, y otras que caen como la lluvia".
Marquesa de S�vign�,(1626-1696); escritora francesa.
"El destino es el que baraja las cartas, pero nosotros somos los
quejugamos". William Shakespeare (1564-1616); poeta y dramaturgo ingl�s.
^---------- Script ends here
Output:
Quote: Hablar es el arte de sofocar e interrumpir el pensamiento
Author: Thomas Carlyle (1795-1881)
Comments: historiador y ensayista escoc?s.
Quote: Se aprende m�s por lo que la gente habla entre s? o por lo que
sesobrenti
ende, que plante�ndose preguntas
Author: Rudyard Kipling (1865-1936)
Comments: escritor ingl?s, de origen indio.
Quote: Hay palabras que suben como el humo, y otras que caen como la lluvia
Author: Marquesa de S?vign?,(1626-1696)
Comments: escritora francesa.
Quote: El destino es el que baraja las cartas, pero nosotros somos los
quejugamos
Author: William Shakespeare (1564-1616)
Comments: poeta y dramaturgo ingl?s.
-----Original Message-----
From: Eduardo Cancino [mailto:[EMAIL PROTECTED]]
Sent: Thursday, May 09, 2002 12:42
To: List Beginners Perl
Subject: Regexp
Hello!
I have a lot of trouble understanding regexes, i just don't get how to parse
a file with:
"Hablar es el arte de sofocar e interrumpir el pensamiento". Thomas Carlyle
(1795-1881); historiador y ensayista escoc�s.
"Se aprende m�s por lo que la gente habla entre s� o por lo que se
sobrentiende, que plante�ndose preguntas". Rudyard Kipling (1865-1936);
escritor ingl�s, de origen indio.
"Hay palabras que suben como el humo, y otras que caen como la lluvia".
Marquesa de S�vign�,(1626-1696); escritora francesa.
"El destino es el que baraja las cartas, pero nosotros somos los que
jugamos". William Shakespeare (1564-1616); poeta y dramaturgo ingl�s.
I need to separate for print the quote, then the name and the coments.
Could someone give me some pointers??
Thanks!
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]