$re = '/^([^[]+)\[([^:\]]+)[^\]]*\]([^[]+)\[\/\2\]/m';
$str = 'There\'s a problem with your [anchor:info]Account Details[/anchor].
There\'s a problem with your [anchor:rewards]Sign Up For Rewards[/anchor].
We didn\'t recognize this account. Please re-enter your email or [link-to:register]Create An Account[/link-to].';
$subst = "\1\3";
$result = preg_replace($re, $subst, $str);
echo "The result of the substitution is ".$result;
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php