Не используйте классы символов для этого Использовать или сепаратор |
Это должно дать вам правильный вывод:
preg_split("/, | and /",$data)
Дает следующий выход:
Array
(
[0] => Rosemary J. Harris $^{1}$
[1] => Vladislav Popkov $^{2}$
[2] => Gunter M. Sch\"utz $^{3,}$*
)