We regularly see developers using regular expressions to validate or scrape for DOIs. For modern Crossref DOIs the regular expression is short /^10.\d{4,9}/[-._;()/:A-Z0-9]+$/i 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.