在Java中,有一种方法可以通过正则表达式提取字符串的未知子集的值。例如,在以下字符串“hello world 1234”中,我希望能够通过正则表达式[0-9] *提取值1234。有没有办法做到这一点?
答案 0 :(得分:3)
是 - 将您想要的位放入正则表达式中的一个组中。
有一种教程here或在this longer page中找到“捕获与模式匹配的字符串”。
答案 1 :(得分:1)
使用提供的API实际上非常简单:
Pattern p = Pattern.compiler("regexp")
Matcher m = p.matches(string)
最后你迭代捕获的群组
for (int i = 0; i < m.groupCount(); ++i)
System.out.println(m.group(i));
答案 2 :(得分:1)
此外,您可以随时查看有关REGEX的“官方”教程:here。