GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  MAIL::ADDRESS (3)

.ds Aq ’

NAME

Mail::Address - Parse mail addresses

CONTENTS

SYNOPSIS



 use Mail::Address;
 my @addrs = Mail::Address->parse($line);

 foreach $addr (@addrs) {
     print $addr->format,"\n";
 }



DESCRIPTION

Mail::Address extracts and manipulates email addresses from a message header. It cannot be used to extract addresses from some random text. You can use this module to create RFC822 compliant fields.

Although Mail::Address is a very popular subject for books, and is used in many applications, it does a very poor job on the more complex message fields. It does only handle simple address formats (which covers about 95% of what can be found). Problems are with
o no support for address groups, even not with the semi-colon as separator between addresses;
o limited support for escapes in phrases and comments. There are cases where it can get wrong; and
o you have to take care of most escaping when you create an address yourself: Mail::Address does not do that for you.
Often requests are made to the maintainers of this code improve this situation, but this is not a good idea, where it will break zillions of existing applications. If you wish for a fully RFC2822 compliant implementation you may take a look at Mail::Message::Field::Full, part of MailBox.

METHODS

    Constructors

Mail::Address-><B>newB>( PHRASE, ADDRESS, [ COMMENT ] ) Create a new Mail::Address object which represents an address with the elements given. In a message these 3 elements would be seen like:



 PHRASE <ADDRESS> (COMMENT)
 ADDRESS (COMMENT)



example:



 Mail::Address->new("Perl5 Porters", "perl5-porters@africa.nicoh.com");



$obj-><B>parseB>(LINE) Parse the given line a return a list of extracted Mail::Address objects. The line would normally be one taken from a To,Cc or Bcc line in a message

example:



 my @addr = Mail::Address->parse($line);



    Accessors

$obj-><B>addressB>() Return the address part of the object.
$obj-><B>commentB>() Return the comment part of the object
$obj-><B>formatB>( [ADDRESSes] ) Return a string representing the address in a suitable form to be placed on a To, Cc, or Bcc line of a message. This method is called on the first ADDRESS to be used; other specified ADDRESSes will be appended, separated with commas.
$obj-><B>phraseB>() Return the phrase part of the object.

    Smart accessors

$obj-><B>hostB>() Return the address excluding the user id and ’@’
$obj-><B>nameB>() Using the information contained within the object attempt to identify what the person or groups name is.

<B>Note:B> This function tries to be smart with the phrase of the email address, which is probably a very bad idea. Consider to use phrase() itself.

$obj-><B>userB>() Return the address excluding the ’@’ and the mail domain

SEE ALSO

This module is part of the MailTools distribution, http://perl.overmeer.net/mailtools/.

AUTHORS

The MailTools bundle was developed by Graham Barr. Later, Mark Overmeer took over maintenance without commitment to further development.

Mail::Cap by Gisle Aas <aas@oslonett.no>. Mail::Field::AddrList by Peter Orbaek <poe@cit.dk>. Mail::Mailer and Mail::Send by Tim Bunce <Tim.Bunce@ig.co.uk>. For other contributors see ChangeLog.

LICENSE

Copyrights 1995-2000 Graham Barr <gbarr@pobox.com> and 2001-2007 Mark Overmeer <perl@overmeer.net>.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html

Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 MAIL::ADDRESS (3) 2014-11-21

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.