用Matcher怎么提取这样的数字

现在我有这样的字符串"时间3.28-10.10有效",怎么用Matcher分别提取3.28和10.10这两个数字字符串?主要是怎么写正则表达式,只会写匹配的正则,提取的正则表达式不会?

[code="java"]
String str="时间3.28-10.10有效";
Pattern pat=Pattern.compile("[0-9]+\.[0-9]+");
Matcher mcr=pat.matcher(str);
while(mcr.find()){
System.out.println(mcr.group());
}
[/code]