Doi   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 42
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 1
eloc 11
dl 0
loc 42
ccs 2
cts 2
cp 1
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A getQueryString() 0 3 1
1
<?php
2
3
namespace PubPeerFoundation\PublicationDataExtractor\Identifiers;
4
5
class Doi extends Identifier
6
{
7
    /**
8
     * Resource array.
9
     *
10
     * @var array
11
     */
12
    protected $resources = [
13
        // \PubPeerFoundation\PublicationDataExtractor\Resources\Doi::class,
14
        \PubPeerFoundation\PublicationDataExtractor\Resources\Crossref::class,
15
        \PubPeerFoundation\PublicationDataExtractor\Resources\CrossrefUpdates::class,
16
        \PubPeerFoundation\PublicationDataExtractor\Resources\IdConverter::class,
17
        \PubPeerFoundation\PublicationDataExtractor\Resources\EutilsEsearch::class,
18
    ];
19
20
    /**
21
     * @var array
22
     */
23
    protected $complementaryResources = [
24
        'pubmed' => \PubPeerFoundation\PublicationDataExtractor\Resources\EutilsEfetch::class,
25
    ];
26
27
    /**
28
     * new RegExp found: https://stackoverflow.com/questions/27910/finding-a-doi-in-a-document-or-page:.
29
     *
30
     * @var string
31 10
     */
32
    protected $regex = '/\b(10[.][0-9]{3,}(?:[.][0-9]+)*\/(?:(?!["&\'])\S)+)\b/';
33 10
34
    /**
35
     * @var string
36
     */
37
    protected $baseUrl = 'https://doi.org/';
38
39
    /**
40
     * QueryString getter.
41
     *
42
     * @return string
43
     */
44
    public function getQueryString(): string
45
    {
46
        return rtrim($this->matches[0], ' .');
47
    }
48
}
49