Q: Заменить названия ссылок Есть ссылки
<a href="link">название ссылки</a>
<a href="link" title="подпись">название ссылки</a>

И подобные, атрибуты внутри  могут быть разные.
Мне же нужно найти и заменить только название ссылки всех ссылок которые есть в строке.
Желательно регуляркой.
Буду благодарен за помощь.

A: 
нужно найти и заменить только название ссылки всех ссылок которые есть в строке

Если нужен только поиск, тогда можно так:
$str = '<a href="link">название ссылки 1</a>
    <a href="link" title="подпись">название ссылки 2</a>';

preg_match_all('~<a[^>]*>(.+?)</a>~', $str, $arr);
var_dump( $arr[1] );

Результат:
array (size=2)
  0 => string 'название ссылки 1'
  1 => string 'название ссылки 2'


Если поиск с заменой, тогда так:
$repl = 'Новое название ссылки';
$str = preg_replace('~(<a[^>]*>).+?(</a>)~', "$1{$repl}$2", $str);

var_dump( $str );

Результат:
<a href="link">Новое название ссылки</a>
<a href="link" title="подпись">Новое название ссылки</a>

