gpt4 book ai didi

java - 在 Java 中匹配 ${123...456} 并提取 2 个数字?

转载 作者:行者123 更新时间:2023-11-30 06:19:10 26 4
gpt4 key购买 nike

当我知道格式将始终为 ${INT1...INT2} 时,从字符串中期望 2 个整数的最简单简洁的方法是什么,例如“你好 ${123...456} 会提取 123,456 吗?

最佳答案

我会选择带有组和反向引用的 Pattern

这是一个例子:

String input = "Hello ${123...456}, bye ${789...101112}";
// | escaped "$"
// | | escaped "{"
// | | | first group (any number of digits)
// | | | | 3 escaped dots
// | | | | | second group (same as 1st)
// | | | | | | escaped "}"
Pattern p = Pattern.compile("\\$\\{(\\d+)\\.{3}(\\d+)\\}");
Matcher m = p.matcher(input);
// iterating over matcher's find for multiple matches
while (m.find()) {
System.out.println("Found...");
System.out.println("\t" + m.group(1));
System.out.println("\t" + m.group(2));
}

输出

Found...
123
456
Found...
789
101112

关于java - 在 Java 中匹配 ${123...456} 并提取 2 个数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23538072/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com