BibTeX::Parser::Author(3pm)

NAME
BibTeX::Author - Contains a single author for a BibTeX document.

SYNOPSIS
This class is a wrapper for a single BibTeX author. It is usually created by a BibTeX::Parser.

    use BibTeX::Parser::Author;

    my $entry = BibTeX::Parser::Author->new($full_name);

    my $firstname = $author->first;
    my $von       = $author->von;
    my $last      = $author->last;
    my $jr        = $author->jr;

    # or ...

    my ($first, $von, $last, $jr) = BibTeX::Author->split($fullname);

FUNCTIONS

  new
Create new author object. Expects full name as parameter.

  first
Set or get first name(s).

  von
Set or get 'von' part of name.

  last
Set or get last name(s).

  jr
Set or get 'jr' part of name.

  split
Split name into (firstname, von part, last name, jr part). Returns array with four strings, some of them possibly empty.

  to_string
Return string representation of the name, as described next.

NOTES
BibTeX allows three representations of a person's name:

1.  First von Last

2.  von Last, First

3.  von Last, Jr, First

The module always converts the first form to the second or third one to allow simple string comparisons.

The algorithm to determine the von part is the following: von part consists of tokens where the first letter at brace level 0 is in lower case. Anything in a "special characters" is on brace level 0. Thus the following tokens are considered von parts: "von", "\NOOP{von}Von", and the following token is not: "{von}"

VERSION
version 1.95

AUTHOR
Gerhard Gossen <gerhard.gossen@googlemail.com> and Boris Veytsman <boris@varphi.com> and Karl Berry <karl@freefriends.org>

COPYRIGHT AND LICENSE
Copyright 2013-2026 Gerhard Gossen, Boris Veytsman, Karl Berry

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.