package regex;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class tiquName {
public static void main(String[] args) {
String regEx=".+/(.+)$";
String str="c:/dir1/dir2/name.text";
Pattern p=Pattern.compile(regEx);
Matcher m=p.matcher(str);
while(!m.find()){
System.out.println("文件格式错误!");
return;
}
System.out.println(m.group(1));
System.out.println(m.group(0));
// System.out.println(m.group(3));
// System.out.println(m.group(4));
}
}
上述代码执行后的结果为:
name.text
c:/dir1/dir2/name.text
在这里我有点不明白的地方是为什么从group(0)和group(1)得到的分别是c:/dir1/dir2/name.text和name.text
为什么不能得到dir2/name.text或者dir1/dir2/name.text呢