正規表現を使用して引用からページ番号を抽出しようとしています。
私が扱っているテストデータは次のとおりです。
- ジャーナル名、巻。20、2号。p。15
- ジャーナル名、巻。20、2号:人名(1990年~2010年)p。15
- ジャーナル名、巻。20、2号:人名(1990年~2010年)15~20ページ
- ジャーナル名、巻。20、2号:人名(1990年~2010年)15ページ~
- ジャーナル名、巻。20、2号。20-25
- ジャーナル名、巻。20、2号。ISSN: 1234-1234 (印刷); 20-25
- ジャーナル名、巻。20、2号。20-25 ; ISSN: 1234-1234 (プリント)
- ジャーナル名、巻。20、2号。ISSN: 1234-1234 (印刷); ISSN: 1234-1234 (オンライン); 20-25
- ジャーナル名、巻。20、2号。ISSN 1234-1234 (印刷); ISSN 1234-1234 (オンライン); 20-25
次の正規表現を使用する場合:
(?![^()]*\))(\d+-\d+)
上記の太字の値は一致しています。
\d+-\d+
「ISSN」または「ISSN:」の後に来るものと一致しないようにその正規表現を改善したいと思います。を使用して後読みを追加しようとしまし(?<![ISSN:?\s])
たが、成功しませんでした。
それを達成し、以下の値のみを一致させる方法について何か考えはありますか?
- ジャーナル名、巻。20、2号。p。15
- ジャーナル名、巻。20、2号:人名(1990年~2010年)p。15
- ジャーナル名、巻。20、2号:人名(1990年~2010年)15~20ページ
- ジャーナル名、巻。20、2号:人名(1990年~2010年)15ページ~
- ジャーナル名、巻。20、2号。20-25
- ジャーナル名、巻。20、2号。ISSN: 1234-1234 (印刷); 20-25
- ジャーナル名、巻。20、2号。20-25 ; ISSN: 1234-1234 (プリント)
- ジャーナル名、巻。20、2号。ISSN: 1234-1234 (印刷); ISSN: 1234-1234 (オンライン); 20-25
- ジャーナル名、巻。20、2号。ISSN 1234-1234 (印刷); ISSN 1234-1234 (オンライン); 20-25