文献の参照が埋め込まれたテキストをループしています。これらのいくつかは DOI 番号であり、それらをリンクする必要があります。
テキスト例:
<div>Interesting article here: doi:10.1203/00006450-199305000-00005</div>
私がこれまでに試したこと:
$html = preg_replace("\b(10[.][0-9]{4,}(?:[.][0-9]+)*/(?:(?![\"&\'<>])[[:graph:]])+)\b", "<a href='https://doi.org/\\0' target='_new'>doi:\\0</a>",$html);
これは空の文字列を返します。
私は期待しています:
<div>Interesting article here: <a href='https://doi.org/10.1203/00006450-199305000-00005' target='_new'>doi:10.1203/00006450-199305000-00005</a></div>
どこが間違っていますか?
edit 2018-01-30 : 以下の Katrin の回答に従って DOI リゾルバーを更新しました。