返回jar文件名

时间:2012-02-17 11:21:06

标签: regex

返回logging.jar的正则表达式。路径可以包含不同级别的深度。

我想我需要使用'。'操作员但不确定如何处理不同数量的斜杠?

以下两个测试用例都应该返回logging.jar

C:/proj/test/tester/base/logging.jar C:/proj/test/tester/base/leveldeeper/logging.jar

3 个答案:

答案 0 :(得分:1)

没有正则表达式的解决方案

String path = "C:/proj/test/tester/base/leveldeeper/logging.jar";
String splitPath[] = path.split("/");

System.out.println("Jar File name: " + splitPath[splitPath.length - 1]);

答案 1 :(得分:0)

/([^/]+\.jar)$/会在第一个捕获组中为您提供结果。

答案 2 :(得分:0)

.*/([^\\.]*)\\..*
在第1组中,您将获得file.extension的名称无关紧要。 如果您只想获取jar文件的名称,请使用以下模式:
.*/([^\\.]*)\\.jar

.*是一个贪婪的正则表达式,它会匹配到最后 /。在/之后,只有文件的名称带有扩展名,你只需要得到它的名字。 [^\\.]*也很贪婪,并且会匹配到最后点(.),实际上你需要的是因为最后一个点是扩展名分隔符。