我寫一個正則表達式來匹配以下字符串類型:正則表達式匹配的版本號零個或更多的時間
my-jar-1.2.3.5.jar
my-jar.jar
my-jar-1.2.jar
隨着 A regex for version number parsing 的幫助下,我想通了以下
String pat = "^my-jar(-|\\.)?(?:(\\d+)\\.)?(?:(\\d+)\\.)?(?:(\\d+)\\.)?(\\*|\\d+).jar$";
Pattern patt = Pattern.compile(pat);
System.out.println("For my-jar-1.2.jar - " + patt.matcher("my-jar-1.2.jar").find());
System.out.println("For my-jar-1.2.3.5.jar - " + patt.matcher("my-jar-1.2.3.5.jar").find());
System.out.println("For my-jar.jar - " + patt.matcher("my-jar.jar").find());
輸出爲
For my-jar-1.2.jar - true
For my-jar-1.2.3.5.jar - true
For my-jar.jar - false
如何包含t他在我的正則表達式中的最後一個案例?
不可擴展。如果OP想要有5個級別的版本會怎麼樣?即1.2.3.4.5? – TheLostMind
@TheLostMind ...同意 – mhasan