Here we want to swipe the string up to a left boundary, then collect our desired data, then continue swiping to the end of string, if we like:
<.+title="(.+?)"(.*)

const regex = /<.+title="(.+?)"(.*)/gm;
const str = `<a href="http://google.com/" target="_self" title="TEXTDATA" class="encyclopedia">Google</a>`;
const subst = `$1`;
// The substituted value will be contained in the result variable
const result = str.replace(regex, subst);
console.log('Substitution result: ', result);
RegEx
If this expression wasn't desired, it can be modified or changed in regex101.com.
RegEx Circuit
jex.im also helps to visualize the expressions.

PHP
$re = '/<.+title="(.+?)"(.*)/m';
$str = '<a href="http://google.com/" target="_self" title="TEXTDATA" class="encyclopedia">Google</a>';
$subst = '$1';
$result = preg_replace($re, $subst, $str);
echo $result;