日期:2014-05-20  浏览次数:20706 次

用正则怎么匹配正确的路径?
比如一张图片的路径是:
String str="D:\\Black\\700\\1000000023\\helper.xx.jpg";
或者D:\\Black\\700\\1000000023\\
或者D:\\Black\\700\\1000000023
只有这三种情况,
如果是其它情况就算错误路径,
我现在想获取1000000023这个字符串。
但是前提是先判断这个路径是否为图片的路径,
判断通过后在使用正则获取这个路径,
应该怎么写?
我用逻辑上的split实现了,但是感觉不理想,还是想用正则实现以下,求助。

------解决方案--------------------

String str="D:\\Black\\700\\1000000023\\helper.xx.jpg";
Matcher m=Pattern.compile("(.*)\\\\(.*)\\\\(.*?)\\.jpg").matcher(str);
while(m.find())
System.out.println(m.group(2));