На самом деле вам нужно вызвать метод find () для объекта Matcher, чтобы пройтись по вашей строке. И, как сказал Петри Пеллинен, вы должны проверить правильность группировки.
Попробуйте следующий код:
String str = "My team <xxx-yyyy@uuuu.com> My team <xxx-yyyy@uuuu.com> \n " +
"My team <xxx-yyyy@uucom> My team <xxx-yyyy@uuuu.com> " +
"My team <xxx-yyyy@uuuu.com> My team <xxx-yyyy@uuuu.com>";
Pattern p = Pattern.compile("\\<(.*?)\\>");
Matcher m = p.matcher(str);
while(m.find()){
System.out.println(m.group(1));
}
и проверьте выбранные группы.
Результаты:
xxx-yyyy@uuuu.com
xxx-yyyy@uuuu.com
xxx-yyyy@uucom
xxx-yyyy@uuuu.com
xxx-yyyy@uuuu.com
xxx-yyyy@uuuu.com
ура!