Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #alias SEPARATOR =
- Token.punctuation<string!="-", string!=":", string!="?", string!=")"> | Node<isBreak=true>
- #
- #alias ET_AL =
- Token.word.non-letter<text()="et">
- Token.word.non-letter<text()="al">
- #
- #alias ARXIV =
- (
- Node<isWhitespace=true> | Token.punctuation.bracket | Token.symbol | (Token.word<string.lower="arxiv">? Token.punctuation.colon)
- (
- Token.number<length=4>
- Node<length=0>
- Token.punctuation.period
- Node<length=0>
- Token.number<length=4> | Token.number<length=5>
- )
- Node<isWhitespace=true> | Token.punctuation.period | Token.punctuation.bracket | Token.symbol
- ) |
- (
- Token.word.non-letter<string.lower="arxiv">
- Token.punctuation.colon
- (
- Token.number<length=4>
- Node<length=0>
- Token.punctuation.period
- Node<length=0>
- Token.number<length=4> | Token.number<length=5>
- )
- )
- #
- #alias JOURNAL =
- (
- Token.word.non-letter<string.lower="journal">
- Token.word.non-letter<string.lower="of">
- )?
- (
- (
- Token.word<typography!="lower"> | (Token.number (Token.word<text()="st"> | Token.word<text()="nd"> | Token.word<text()="rd"> | Token.word<text()="th">))
- (Token.punctuation.period | Token.punctuation.slash | Token.punctuation.colon)?
- )
- (
- (
- Token.word | Token.punctuation.ampersand | (Token.punctuation.dash Token.word) | Term.lexical | Token.word<text()="et"> | (Token.number (Token.word<text()="st"> | Token.word<text()="nd"> | Token.word<text()="rd"> | Token.word<text()="th">))
- (Token.punctuation.slash | Token.punctuation.colon)?
- ) |
- (
- Token.word<typography!="lower">
- Token.punctuation.period?
- )
- )*
- ) |
- (
- wordlist:JournalName
- )
- #
- #alias TITLE =
- (Token.symbol.misc<text()="“"> | Token.punctuation.quote)?
- (
- Token.word<typography!="lower"> | Token.number
- Token.punctuation<string!=".", string!="\"">{0,2} | Token.symbol.misc?
- (
- Token.word | Token.number
- Token.punctuation{0,2} | Token.symbol<text()!="”">{0,2}
- ) +
- Token.punctuation.question?
- ) = $title
- (Token.symbol.misc<text()="”"> | Token.punctuation.quote)?
- #
- #alias JINFO =
- ( // pages 2310-2337
- (
- Token.word.non-letter<string="pages"> | Token.word.non-letter<string="pagg"> | Token.word.non-letter<string="pp">
- Token.punctuation.period?
- ) ?
- Token.number = $fpage
- Token.punctuation.dash
- Token.number = $lpage
- ) |
- (
- (
- Token.word.non-letter<string.lower="vol">
- Token.punctuation.period?
- )?
- Token.number = $vol
- (
- Token.punctuation.bracket
- Token.number = $issue
- (
- Token.punctuation.dash
- Token.number
- )?
- Token.punctuation.bracket
- )?
- Token.punctuation.comma | Token.punctuation.colon
- Token.number = $fpage
- (
- Token.punctuation.dash
- Token.number = $lpage
- )?
- ) |
- ( // volume 12, page 88
- Token.word.non-letter<string.lower="volume"> | (Token.word.non-letter<string.lower="vol"> Token.punctuation.period?)
- Token.number = $vol
- Token.punctuation.comma
- Token.word.non-letter<string.lower="page"> | (Token.word.non-letter<string.lower="pp"> Token.punctuation.period?) | (Token.word.non-letter<string.lower="pagg"> Token.punctuation.period?)
- Token.number = $fpage
- (
- Token.punctuation.dash
- Token.number = $lpage
- )?
- ) |
- ( // 33, D89
- Token.number = $vol
- (
- Token.punctuation.comma
- Token.word.letter
- Token.number
- )?
- ) |
- ( // 18:1, 61-73
- Token.number
- Token.punctuation.colon
- Token.number
- Token.punctuation.comma
- Token.number = $fpage
- (
- Token.punctuation.dash
- Token.number = $lpage
- )?
- ) |
- (
- Token.number = $vol
- Token.number = $fpage
- ) |
- (
- Token.word.non-letter<string.lower="vol">
- Token.punctuation.period?
- Token.number = $vol
- (
- Token.punctuation.colon
- (
- Token.punctuation.dash
- Token.number = $lpage
- )?
- )?
- ) |
- (
- @ARXIV
- )
- #
- #alias MONTH =
- wordlist:Month
- Token.punctuation.period?
- #
- #alias YEAR =
- Token.punctuation.bracket.open?
- @MONTH?
- tag:PubYear
- (
- Node<length=0>
- Token.word.letter<typography="lower">
- )?
- Token.punctuation.bracket.close?
- #
- tag:AuthorList
- @SEPARATOR?
- @ET_AL?
- @SEPARATOR{0,2}
- ( // AuthorList -> Title -> Journal -> JInfo? -> Year
- @TITLE
- @SEPARATOR{1,2}
- (
- Token.word.non-letter<string.lower="in">
- Token.word.non-letter<string.lower="the">?
- )?
- @JOURNAL = $journal
- (
- Token.punctuation.bracket
- Token{1,3}
- Token.punctuation.bracket
- )?
- (
- @SEPARATOR{0,2}
- @JINFO = $jinfo // Optional vol/page stuff
- @SEPARATOR{0,2}
- )?
- @YEAR
- @SEPARATOR?
- Node<isBreak=true>
- ) |
- ( // AuthorList -> Year -> Title -> Journal
- @YEAR
- @SEPARATOR{0,2}
- @TITLE
- @SEPARATOR{1,2}
- (
- Token.word.non-letter<string.lower="in">
- Token.word.non-letter<string.lower="the">?
- )?
- @JOURNAL = $journal
- (
- Token.punctuation.bracket
- Token{1,3}
- Token.punctuation.bracket
- )?
- (
- @SEPARATOR{0,2} // Optional vol/page stuff
- @JINFO = $jinfo
- @SEPARATOR{0,2}
- )?
- @SEPARATOR?
- (
- Token.symbol.misc
- Token+
- Token.symbol.misc
- )?
- Node<isBreak=true>
- ) |
- ( // AuthorList -> Title -> Journal -> Year -> JInfo?
- @TITLE
- @SEPARATOR{0,2}
- (
- Token.word.non-letter<string.lower="in">
- Token.word.non-letter<string.lower="the">?
- )?
- @JOURNAL = $journal
- (
- Token.punctuation.bracket
- Token{1,3}
- Token.punctuation.bracket
- )?
- Token.number? = $vol
- @SEPARATOR{0,2}
- @YEAR
- (
- @SEPARATOR{0,2} // Optional vol/page stuff
- @JINFO = $jinfo
- @SEPARATOR{0,2}
- )?
- @SEPARATOR?
- Token*
- Node<isBreak=true>
- ) |
- ( // AuthorList -> Year -> Journal
- @YEAR
- @SEPARATOR{0,2}
- @JOURNAL = $journal
- (
- Token.punctuation.bracket
- Token{1,3}
- Token.punctuation.bracket
- )?
- (
- @SEPARATOR{0,2} // Optional vol/page stuff
- @JINFO = $jinfo
- @SEPARATOR{0,2}
- )?
- @SEPARATOR
- Node<isBreak=true>
- ) |
- ( // AuthorList -> Title -> ArxivID
- @TITLE
- @SEPARATOR
- tag:ArxivID
- ) |
- ( // AuthorList -> Year -> Title -> Editor -> Journal -> Misc
- @YEAR
- @SEPARATOR{0,2}
- @TITLE
- (
- @SEPARATOR
- Token.word.non-letter<string.lower="in">
- Token+
- (
- Token.punctuation.bracket.open
- Token.word
- Token.punctuation.period?
- Token.punctuation.bracket.close
- )
- )?
- @SEPARATOR
- @JOURNAL = $journal
- (
- @SEPARATOR{0,2} // Optional vol/page stuff
- @JINFO = $jinfo
- @SEPARATOR{0,2}
- )?
- Token*
- ) |
- ( // AuthorList -> Year -> Title
- @SEPARATOR?
- @YEAR
- @SEPARATOR?
- @TITLE
- @SEPARATOR?
- Node<isBreak=true>
- ) |
- ( // AuthorList -> Journal -> JInfo? -> Year -> Misc
- @SEPARATOR?
- @JOURNAL = $journal
- (
- @SEPARATOR{0,2} // Optional vol/page stuff
- @JINFO = $jinfo
- @SEPARATOR{0,2}
- )?
- @YEAR
- Token*
- Node<isBreak=true>
- )
- > $journal = tag:Journal<volume=$vol.text(), fpage=$fpage.text(), lpage=$lpage.text(), issue=$issue.text()>
- > $title = tag:PaperTitle
- tag:PubYear
- > !!tag:PaperTitle @delete
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement