Mail::MboxParser::Mail::Body man page on Fedora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Fedora logo
[printable version]

MboxParser::Mail::BodyUser Contributed Perl DocumentaMboxParser::Mail::Body(3)

NAME
       Mail::MboxParser::Mail::Body - rudimentary mail-body object

SYNOPSIS
	   use Mail::MboxParser;

	   [...]

	   # $msg is a Mail::MboxParser::Mail
	   my $body = $msg->body(0);

	   # or preferably

	   my $body = $msg->body($msg->find_body);

	   for my $line ($body->signature) { print $line, "\n" }
	   for my $url ($body->extract_urls(unique => 1)) {
	       print $url->{url}, "\n";
	       print $url->{context}, "\n";
	   }

DESCRIPTION
       This class represents the body of an email-message.  Since emails can
       have multiple MIME-parts and each of these parts has a body it is not
       always easy to say which part actually holds the text of the message
       (if there is any at all).  Mail::MboxParser::Mail::find_body will help
       and suggest a part.

METHODS
       as_string ([strip_sig => 1])
	   Returns the textual representation of the body as one string.
	   Decoding takes place when the mailbox has been opened using the
	   decode => 'BODY' | 'ALL' option.

	   If 'strip_sig' is set to a true value, the signature is stripped
	   from the string.

       as_lines ([strip_sig => 1])
	   Sames as as_string() just that you get an array of lines with
	   newlines attached to each line.

	   NOTE: When the body is actually some encoded binary data (most
	   commonly such a body is base64-encoded), you can still use this
	   method. Then you wont really get proper lines. Instead you get
	   chunks of binary data that you should concatenate as in

	       my $binary = join "", $body->as_lines;

	   If 'strip_sig' is set to a true value, the signature is stripped
	   from the string.

       signature
	   Returns the signature of a message as an array of lines. Trailing
	   newlines are already removed.

	   $body->error returns a string if no signature has been found.

       extract_urls
       extract_urls (unique => 1)
	   Returns an array of hash-refs. Each hash-ref has two fields: 'url'
	   and 'context' where context is the line in which the 'url'
	   appeared.

	   When calling it like $mail->extract_urls(unique => 1), duplicate
	   URLs will be filtered out regardless of the 'context'. That's
	   useful if you just want a list of all URLs that can be found in
	   your mails.

	   $body->error() will return a string if no URLs could be found
	   within the body.

       quotes
	   Returns a hash-ref of array-refs where the hash-keys are the
	   several levels of quotation. Each array-element contains the
	   paragraphs of this quotation-level as one string. Example:

		   my $quotes = $msg->body($msg->find_body)->quotes;
		   print $quotes->{1}->[0], "\n";
		   print $quotes->{0}->[0], "\n";

	   This should print the first paragraph of the mail-body that has
	   been quoted once and below that the paragraph that supposedly is
	   the reply to this paragraph. Perhaps thus:

		   > I had been trying to work with the CGI module
		   > but I didn't yet fully understand it.

		   Ah, it is tricky. Have you read the CGI-FAQ that
		   comes with the module?

	   Mark that empty lines will not be ignored and are part of the lines
	   contained in the array of $quotes->{0}.

	   So below is a little code-snippet that should, in most cases,
	   restore the first 5 paragraphs (containing quote-level 0 and 1) of
	   an email:

		   for (0 .. 4) {
			   print $quotes->{0}->[$_];
			   print $quotes->{1}->[$_];
		   }

	   Since quotes() considers an empty line between two quotes
	   paragraphs as a paragraph in $quotes->{0}, the paragraphs with one
	   quote and those with zero are balanced. That means:

	   scalar @{$quotes->{0}} - DIFF == scalar @{$quotes->{1}} where DIFF
	   is element of {-1, 0, 1}.

	   Unfortunately, quotes() can up to now only deal with '>' as
	   quotation-marks.

VERSION
       This is version 0.55.

AUTHOR AND COPYRIGHT
       Tassilo von Parseval <tassilo.von.parseval@rwth-aachen.de>

       Copyright (c)  2001-2005 Tassilo von Parseval.  This program is free
       software; you can redistribute it and/or modify it under the same terms
       as Perl itself.

SEE ALSO
perl v5.14.1			  2005-12-08	     MboxParser::Mail::Body(3)
[top]

List of man pages available for Fedora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net