我对匹配器有疑问.目前,我正在尝试读取字符串并将所有数字存储到数组中.我的问题是,您如何尝试同时匹配整数和小数?
我有一个称为双打的数组:
double[] thisArray = new double[20];
到这个数组中,我试图存储我从字符串中提取的所有数字.
Matcher temp =
Pattern.compile(“(\d+)”).matcher(x);
那是我为匹配器提供的功能.但这仅匹配整数.我想同时匹配整数和小数,如(5.2).但是我该怎么做呢?我希望能够在我的字符串中同时输入整数和小数.
任何帮助,将不胜感激.谢谢!
解决方法:
这将同时处理整数和小数:-
private Pattern p = Pattern.compile("\\d+(\\.\\d+)?");
@Test
public void testInteger() {
Matcher m =p.matcher("10");
assertTrue(m.find());
assertEquals("10", m.group());
}
@Test
public void testDecimal() {
Matcher m =p.matcher("10.99");
assertTrue(m.find());
assertEquals("10.99", m.group());
}