Hier mal ein möglicher Ansatz, wobei man sich die Teile vor und Nach dem Link nicht zu merken braucht, da das von den RegExp intern geregelt wird.
An die Funktion parse_links werden gültige Links übergeben und können manipuliert werden. Nach der Rückgabe erfolgt die Ersetzung im String automatisch...
<?php
function setLink($file)
{
if (file_exists($file)) {
$file_string = implode("", (@file($file)) );
$pattern = '/(<a.*>.*</a>)/me'; // e = Ersetzung mit eigener PHP-Funktion
$matches = preg_replace($pattern, 'parse_link("\1")', $file_string);
print_array($matches);
}
else {
return 0;
}
}
function parse_link($link)
{
return $link."<br />";
}
function print_array($var)
{
print "<textarea style="width: 950px; height:550px;">";
print_r ($var);
print "</textarea>";
}
setLink("test.html");
?>