Java自1.4起自带了正则表达式的工具包,在java.util.regex包中。主要的类有两个: Pattern类,对应匹配模式;Matcher类,对应匹配结果。
本文假定已有正则表达式的编写基础,旨在记录Java中正则的使用方法。
正则表达式语法可参考正则表达式基础,正则表达式(2)
- 是否匹配
- 部分匹配
@Test
public void test1() {
String s = "a111b";
Matcher matcher = Pattern.compile("\\d*").matcher(s);
Assert.assertTrue(matcher.find());
// 此方法是要全文模式匹配,实际上调用的方法是 matcher.matches();
Assert.assertTrue(Pattern.matches("\\w*\\d*\\w*", s));
}
- 完全匹配
@Test
public void test2() {
String s = "a111b";
// 此方法是全文匹配此模式才会返回true,实际上调用的方法是 matcher.matches();
Assert.assertTrue(Pattern.matches("\\w*\\d*\\w*", s));
}
- 获取匹配结果
@Test
public void testGetRes() {
String s = "hello0901world222";
Matcher m = Pattern.compile("\\d*").matcher(s);
StringBuilder sb = new StringBuilder();
while (m.find()) {
sb.append(m.group());
}
Assert.assertEquals(sb.toString(), "0901222");
}
网友评论