ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



Mail::Address(3)                     User Contributed Perl Documentation                    Mail::Address(3)



NAME
       Mail::Address - Parse mail addresses

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

          no support for address groups, even not with the semi-colon as separator between addresses

          Limitted support for escapes in phrases and comments.  There are cases where it can get wrong.

          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 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.

       Example:

         my $s = Mail::Message::Field::Full->parse($header);
         # ref $s isa Mail::Message::Field::Addresses;

         my @g = $s->groups;          # all groups, at least one
         # ref $g[0] isa Mail::Message::Field::AddrGroup;
         my $ga = $g[0]->addresses;   # group addresses

         my @a = $s->addresses;       # all addresses
         # ref $a[0] isa Mail::Message::Field::Address;

CONSTRUCTORS
       new( PHRASE,  ADDRESS, [ COMMENT ])
            Mail::Address->new("Perl5 Porters", "perl5-porters@africa.nicoh.com");

           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)

       parse( LINE )
            Mail::Address->parse($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

METHODS
       phrase ()
           Return the phrase part of the object.

       address ()
           Return the address part of the object.

       comment ()
           Return the comment part of the object

       format ()
           Return a string representing the address in a suitable form to be placed on a To,Cc or Bcc line
           of a message

       name ()
           Using the information contained within the object attempt to identify what the person or groups
           name is

       host ()
           Return the address excluding the user id and '@'

       user ()
           Return the address excluding the '@' and the mail domain

       path ()
           Unimplemented yet but should return the UUCP path for the message

       canon ()
           Unimplemented yet but should return the UUCP canon for the message

AUTHOR
       Graham Barr.  Maintained by Mark Overmeer <mailtools@overmeer.net>

COPYRIGHT
       Copyright (c) 2002-2005 Mark Overmeer, 1995-2001 Graham Barr. All rights reserved. This program is
       free software; you can redistribute it and/or modify it under the same terms as Perl itself.



perl v5.8.8                                      2006-01-21                                 Mail::Address(3)

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.