А 需要正则表达式来搜索表格中的一行中的版本:
0.6.9b-version - 0.6.9b
v0.6.99 - 0.6.99
v01.23.97 - 01.23.97
v01.23.97a-release - 01.23.97a
v1.23.97a-release - 1.23.97a
左边是某种初始线,右边是你需要得到的。
我很困惑把它扔进配置器,但我对正则表达式的了解还不够
我结束了
(\d[\w.()]+?[a-z])
但它执行镜像操作,相反删除了我需要留下的内容
图案:
(v)?([0-9]+(\\.[0-9]+)*[a-z]?)(-\\w+)?
import java.util.regex.*;
public class Main {
public static void main(String[] args) {
String[] lines = { "0.6.9b-version", "v0.6.99", "v01.23.97", "v01.23.97a-release", "v1.23.97a-release" };
Pattern pattern = Pattern.compile("(v)?([0-9]+(\\.[0-9]+)*[a-z]?)(-\\w+)?");
for (String line : lines) {
Matcher matcher = pattern.matcher(line);
if (matcher.matches()) {
System.out.println(matcher.group(2)); // Group 2 contains the version number
}
}
}
}