正则表达式涉及Pattern和Matcher两个类,
Pattern的构建 compile()
Pattern pat = Pattern.compile("Java"); // 此处的Java就是正则表达式的模式
Matcher的构建 matcher()
Matcher mat = pat.matcher("Java Test"); // 此处的字符串是用于验证的字符串
验证是否匹配 matches()
boolean found = mat.matches(); // check for a match
获取所有匹配项 start(), end(), group()
while(mat.find()){
// 获取当前位置
System.out.println(mat.start() + "-" + mat.end());
System.out.println(mat.group());
}
替换所有匹配项 replaceAll
mat.replaceAll("replaced text"); // replaced text表示替换后的字符
分割字符串 split
// 分隔符
Pattern pat = Pattern.compile("[ ,.!]");
// 开始分割
String[] strs = pat.split("one two,alpha9 12!done.");
// 按正则表达式分割成子串,不包含分割符
for(int i=0; i < strs.length; i++)
System.out.println("Next token: " + strs[i]);
一次性使用
boolean result = Pattern.matches(String pattern, CharSequence str);
字符串自带方法
boolean result = str.matches("pattern");