doi-utils
A small utility for validating, normalizing, and extracting DOIs from text strings. This repository follows the advice of CrossRef for regular expression patterns.
For the 74.9M DOIs we have seen this matches 74.4M of them. If you need to use only one pattern then use this one.
Install
npm install doi-utils
Overview & Usage
import { validate, buildUrl } from 'doi-utils';
const isValid = validate('http://doi.org/10.1016/j.cageo.2015.09.015');
buildUrl('http://dx.doi.org/10.1016/j.cageo.2015.09.015');
buildUrl('http://www.doi.org/10.1016/j.cageo.2015.09.015');
buildUrl('http://doi.org/10.1016/j.cageo.2015.09.015');
buildUrl('doi:10.1016/j.cageo.2015.09.015');
// All of these produce a normalized, secure DOI url:
// https://doi.org/10.1016/j.cageo.2015.09.015
Included Utilities
-
validate
- Validates if a single DOI string is valid, is tolerant of leading link ordoi:
strings. -
normalize
- Normalizes a DOI url or string into a DOI of the form10.1000/xyz000
-
buildUrl
- Builds a URL to https://doi.org, includes normalization
Made with love by
Curvenote