亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? bibtex.pm

?? 一個論文管理系統(tǒng)
?? PM
字號:
# $Id: BibTeX.pm,v 1.4 2005/08/25 21:55:54 martin Exp $## Copyright 2005 Nature Publishing Group# This program is free software; you can redistribute it and/or# modify it under the terms of the GNU General Public License# as published by the Free Software Foundation; either version 2# of the License, or (at your option) any later version.## The Bibliotech::Import::BibTeX class imports BibTeXpackage Bibliotech::Import::BibTeX;use strict;use base 'Bibliotech::Import';use Text::BibTeX;use File::Temp ();our %TYPES = ('article'       => undef,	      'book'          => 'BOOK',	      'inbook'        => 'CHAP',	      'phdthesis'     => 'THES',	      'techreport'    => 'RPRT',	      'inproceedings' => 'CONF',	      'proceedings'   => 'CONF',	      'conference'    => 'CONF',	      'unpublished'   => 'UNPB',	      'mastersthesis' => 'THES',	      'misc'          => undef,	      'booklet'       => 'PAMP',	      'manual'        => 'BOOK',	      'incollection'  => undef	      );sub name {  'BibTeX';}sub version {  1.0;}sub api_version {  1;}sub mime_types {  ('application/x-bibtex');}sub extensions {  ('bib');}sub understands {  $_[1] =~ /^\@\w+\{\S+,$/m ? 1 : 0;}sub parse {  my $self = shift;  my $doc = $self->doc;  $doc =~ s/^\%.*$//mg;  # hack, remove any comment lines to prevent Text::BibTeX 0.36 from segfaulting  my $tfh = new File::Temp or die 'cannot create temp file';  print $tfh $doc;  close $tfh;  my $filename = $tfh->filename or die 'no filename provided';  my $bibfile = new Text::BibTeX::File ($filename);  my $entries = new Bibliotech::Import::EntryList;  while (my $entry = new Text::BibTeX::Entry $bibfile) {    $entries->push(new Bibliotech::Import::BibTeX::Entry ($entry));  }  $self->data($entries);  return 1;}package Bibliotech::Import::BibTeX::Entry;use strict;use base 'Bibliotech::Import::Entry::FromData';sub parse {  my $self = shift;  $self->data(new Bibliotech::Import::BibTeX::Entry::Text::BibTeX ($self->data));  my $type = lc($self->data->type);  die "BibTeX type \"$type\" not understood.\n" unless exists $TYPES{$type};  $self->parse_ok(1);  return 1;}sub raw_keywords {  my $data = shift->data;  my $kw = $data->get('Keywords') || $data->get('keywords');  return ref($kw) eq 'ARRAY' ? @{$kw} : ($kw);}package Bibliotech::Import::BibTeX::Entry::Text::BibTeX;use strict;use base ('Bibliotech::CitationSource::Result', 'Text::BibTeX::Entry');use Bibliotech::CitationSource::Simple;sub new {  my ($class, $text_bibtex_obj) = @_;  return bless $text_bibtex_obj, ref($class) || $class;}sub type {  return Text::BibTeX::Entry::type(@_);  # Bibliotech::CitationSource::Result one is undef}# override get() to remove those silly braces# also split on semicolonssub get {  my ($self, $key) = @_;  my $value = $self->SUPER::get($key) or return undef;  $value =~ s/[\{\}]//g;  my @values = split(/;\s+/s, $value);  return $value if @values <= 1;  return wantarray ? @values : \@values;}sub uri {  my $self = shift;  # check for the easiest ways  return $self->get('uri') if $self->exists('uri');  return $self->get('url') if $self->exists('url');  # handle lines like this:  #  note = "Available at \url{http://www.cs.brown.edu/people/tld/postscript/GreenwaldandDeanNETWORKS-96.ps}",  if ($self->exists('note')) {    my $note = $self->get('note');    if ($note =~ m|(https?://\S+)|) {      my $url = $1;      $url =~ s/\}$//;      return $url;    }  }  return undef;}sub identifier_field_or_key {  my ($self, @keys) = @_;  foreach (@keys) {    return $self->get($_) if $self->exists($_);  }  my $alternation = join('|', @keys);  if (my $key = $self->key) {    return $1 if $key =~ /^(?:$alternation)_*(.+)$/i;  }  foreach ('note', 'notes', 'bibnote') {    if ($self->exists($_)) {      my $note = $self->get($_);      return $1 if $note =~ /\b(?:$alternation)\s*([:=]\s*)?(\S+)/i;    }  }  return undef;}sub pubmed {  shift->identifier_field_or_key('pmid', 'pubmed');}sub doi {  shift->identifier_field_or_key('doi');}sub asin {  my $self = shift;  $self->identifier_field_or_key('asin') || $self->identifier_field_or_key('isbn');}sub identifiers {  my $self = shift;  my %id;  foreach my $func ('pubmed', 'doi', 'asin') {    my $value = $self->$func or next;    $id{$func} = $value;  }  return %id ? \%id : undef;}sub title {  my $self = shift;  return $self->get('title') if $self->exists('title');  return $self->get('booktitle') if $self->exists('booktitle');  return undef;}sub description {  my $self = shift;  return $self->get('annote') if $self->exists('annote');  return undef;}sub ris_type {  return $TYPES{lc(shift->type)};}# return an object of author objects: Bibliotech::CitationSource::Result::AuthorListsub authors {  my $self = shift;  my $author = eval { return $self->get('author') if $self->exists('author');		      return $self->get('authors') if $self->exists('authors'); };  my @authors = split(/(,|\s*and)\s*/, $author);  return new Bibliotech::CitationSource::Result::AuthorList (map(new Bibliotech::CitationSource::Result::Author::Simple ($_), @authors));}# return a journal object: Bibliotech::CitationSource::Result::Journalsub journal {  my $self = shift;  return undef unless $self->exists('journal');  return new Bibliotech::CitationSource::Result::Journal::Simple ({name => $self->get('journal')});}# return article volume identifiersub volume {  my $self = shift;  return $self->get('volume') if $self->exists('volume');  return $self->get('volumes') if $self->exists('volumes');  return undef;}# return article issue identifiersub issue {  my $self = shift;  return $self->get('issue') if $self->exists('issue');  return $self->get('issues') if $self->exists('issues');  return undef;}# return article issue pagesub page {  my $self = shift;  return $self->get('page') if $self->exists('page');  return $self->get('pages') if $self->exists('pages');  return undef;}# return date first published as YYYY-MM-DD# where MM is digits or 3-letter English month abbreviation# and MM and DD as digits do not need to be zero-paddedsub date {  my $self = shift;  if ($self->exists('year')) {    my $year = $self->get('year');    my $month = $self->get('month');    my $day = $self->get('day');    return sprintf('%04d-%02d-%02d', int($year), int($month), int($day));  }}# return date record was created or last modified, same format as date()# required - do not return undefsub last_modified_date {  undef;}1;__END__

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区三区免费视频 | 麻豆国产精品官网| 亚洲一区二区三区视频在线| 国产精品美女www爽爽爽| 久久久国产精品麻豆| 国产喷白浆一区二区三区| 国产欧美在线观看一区| 丝袜亚洲另类丝袜在线| 蜜桃免费网站一区二区三区| 91久久免费观看| 3751色影院一区二区三区| 日韩一区二区在线观看视频| 2023国产精华国产精品| 国产精品无遮挡| 九九精品一区二区| 一本色道久久综合亚洲91| 欧美老年两性高潮| 久久久国产午夜精品| 蜜桃传媒麻豆第一区在线观看| 欧美中文一区二区三区| 精品理论电影在线| 亚洲日本在线天堂| 青草国产精品久久久久久| 国产精品自拍av| 欧美在线视频全部完| 国产精品乱码人人做人人爱| 国产成人精品一区二区三区网站观看| 91在线高清观看| 欧美tk丨vk视频| 狂野欧美性猛交blacked| 99热精品一区二区| 日韩美女视频在线| 亚洲美女一区二区三区| 国产一区二区导航在线播放| 欧美性受xxxx黑人xyx| 国产亚洲制服色| 性久久久久久久久久久久| 粉嫩一区二区三区在线看| 欧美一区二区成人| 蜜臀a∨国产成人精品| 日韩精品一区二区三区视频播放| 美女一区二区久久| 久久综合久久综合久久综合| 国产九色sp调教91| 国产精品欧美精品| 91福利视频久久久久| 亚洲成av人影院| 欧美电视剧在线观看完整版| 国产一区二区视频在线| 中文字幕精品在线不卡| 国产精品一区一区三区| 国产精品视频一区二区三区不卡| www.欧美.com| 天天综合天天做天天综合| 91福利视频久久久久| 亚洲高清久久久| 色婷婷精品大在线视频| 同产精品九九九| 久久影院午夜论| 91影视在线播放| 日韩电影在线看| 欧美一区二区三区免费| 国产一区二区精品在线观看| 国产精品电影院| 99re热视频这里只精品| 中文字幕中文字幕一区| 欧美久久久一区| 国产精品1区2区3区在线观看| 亚洲一区二区三区视频在线播放 | 亚洲欧美日韩国产综合| 欧美一区二区久久久| 丁香婷婷综合激情五月色| 亚洲综合成人在线视频| 久久久一区二区| 欧美精选一区二区| proumb性欧美在线观看| 久久精品国产亚洲一区二区三区| 国产精品免费aⅴ片在线观看| 91精品国产综合久久久久久久 | 亚洲一区二区av在线| 久久综合久久综合久久| 欧美乱妇一区二区三区不卡视频| 成人中文字幕合集| 亚洲欧洲性图库| 欧美在线影院一区二区| 成人免费看黄yyy456| 视频在线观看一区| 一区二区三区在线观看动漫| 欧美一区二区三区日韩视频| 91久久一区二区| eeuss鲁片一区二区三区在线看| 男人的j进女人的j一区| 亚瑟在线精品视频| 一区二区三区欧美亚洲| 国产精品久久久久久久久免费相片 | 在线播放亚洲一区| 色狠狠一区二区| gogo大胆日本视频一区| 国产麻豆91精品| 精品一区二区三区在线观看| 爽爽淫人综合网网站| 亚洲一区二区不卡免费| 亚洲色图第一区| 在线观看91精品国产麻豆| 91成人在线精品| 在线免费观看一区| 在线免费不卡视频| 欧美优质美女网站| 色综合av在线| 欧洲国内综合视频| 欧美视频完全免费看| 欧美日韩午夜影院| 风间由美一区二区三区在线观看 | 日韩欧美中文一区二区| 91精品免费在线| 日韩一卡二卡三卡四卡| 日韩三级视频在线看| 欧美电影精品一区二区| 国产亚洲自拍一区| 中文在线资源观看网站视频免费不卡| 欧美高清在线视频| 亚洲人一二三区| 亚洲国产视频直播| 奇米综合一区二区三区精品视频 | 337p粉嫩大胆噜噜噜噜噜91av | 精品久久久久久久久久久久久久久 | 久久九九全国免费| 国产精品久久久久久久久动漫 | 日本午夜精品一区二区三区电影| 免费观看在线色综合| 精品一区二区久久| 国产69精品久久777的优势| 99视频一区二区| 7799精品视频| 337p粉嫩大胆色噜噜噜噜亚洲| 欧美激情一区三区| 亚洲自拍偷拍av| 久久国产综合精品| 成人av电影免费观看| 精品无码三级在线观看视频| 国产乱码字幕精品高清av| 99久久精品一区二区| 欧美日韩在线直播| 欧美精品一区二区三区视频| 欧美人狂配大交3d怪物一区| 欧美天堂一区二区三区| 欧美成人伊人久久综合网| 国产欧美精品在线观看| 一区二区三区日韩在线观看| 精品一区二区三区欧美| 色综合久久综合中文综合网| 欧美一区二区啪啪| 日韩毛片视频在线看| 麻豆成人久久精品二区三区红 | 福利一区二区在线观看| 欧美午夜精品理论片a级按摩| 精品美女一区二区三区| 亚洲色图另类专区| 国产一区二区三区在线观看免费视频| 99久久精品国产一区| 精品成人免费观看| 天堂蜜桃一区二区三区| 成人app软件下载大全免费| 欧美成人三级电影在线| 亚洲精品视频在线观看免费| 亚洲天天做日日做天天谢日日欢| 日韩中文字幕亚洲一区二区va在线| 国产成人在线视频网址| 欧美高清性hdvideosex| 亚洲欧美综合另类在线卡通| 精品一区在线看| 欧美日韩亚州综合| 亚洲欧美日韩电影| 国产成人免费视| 日韩精品一区二区在线观看| 一区二区三区四区蜜桃| 成人av电影在线观看| 国产亚洲综合色| 国产又黄又大久久| 日韩精品一区二区三区视频在线观看 | 国产精品乱子久久久久| 国产精品资源站在线| 日韩一级大片在线| 亚洲第一主播视频| 欧美日韩综合色| 一区二区三区电影在线播| 91啪在线观看| 亚洲视频香蕉人妖| www.欧美色图| 亚洲免费观看视频| 日本韩国一区二区| 亚洲黄色av一区| 91色综合久久久久婷婷| 亚洲美女免费在线| 在线观看国产日韩| 亚洲精选视频在线| 91久久精品一区二区二区| 亚洲国产你懂的| 欧美一区二区网站| 麻豆精品在线播放|