Se la struttura è sempre la stessa, puoi fare cosi:
Codice PHP:
<?php
$string = '<ul>
<li><a href="https://www.link1.com" target="_blank">Titolo 1</a> <font color="#6f6f6f">FONTE 1</font></li>
<li><a href="https://www.link2.com" target="_blank">Titolo 2</a> <font color="#6f6f6f">FONTE 2</font></li>
<li><a href="https://www.link3.com" target="_blank">Titolo 3</a> <font color="#6f6f6f">FONTE 3</font></li>
</ul>';
$elements = preg_match_all('#<li><a href="(.*)" target="_blank">(.*)</a> <font color="\#6f6f6f">(.*)</font></li>#', $string, $results, PREG_SET_ORDER);
foreach($results as $result){
echo 'link: '.$result[1].'<br />';
echo 'titolo: '.$result[2].'<br />';
echo 'fonte: '.$result[3].'<br />';
echo '<hr />';
}