logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

BibTeX::Parser - A pure perl BibTeX parser

Author

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

Functions

new
       Creates new parser object.

       Parameters:

               * fh: A filehandle

   next
       Returns the next parsed entry or undef.

Name

       BibTeX::Parser - A pure perl BibTeX parser

Notes

       The fields "author" and "editor" are canonicalized, see BibTeX::Parser::Author.

See Also

       •   BibTeX::Parser::Entry

       •   BibTeX::Parser::Author

Synopsis

       Parses BibTeX files.

           use BibTeX::Parser;
               use IO::File;

           my $fh = IO::File->new("filename");

           # Create parser object ...
           my $parser = BibTeX::Parser->new($fh);

           # ... and iterate over entries
           while (my $entry = $parser->next ) {
                   if ($entry->parse_ok) {
                           my $type    = $entry->type;
                           my $title   = $entry->field("title");

                           my @authors = $entry->author;
                           # or:
                           my @editors = $entry->editor;

                           foreach my $author (@authors) {
                                   print $author->first . " "
                                       . $author->von . " "
                                       . $author->last . ", "
                                       . $author->jr;
                           }
                   } else {
                           warn "Error parsing file: " . $entry->error;
                   }
           }

Version

       version 1.04

See Also