我尝试使用Regexp解析字符串以获取参数。
举个例子:
字符串:“带有第二个测试第2部分的TestStringpart1”
结果应为:String [] {“part1”,“part2”}
正则表达式:“带有第二个测试(。*?)的TestString(。*?)”
我的测试代码是:
字符串regexp =“带有第二个测试(。*?)的TestString(。*?)”;
字符串res =“带有第二个测试part2的TestStringpart1”;
模式模式= Pattern.compile(regexp);
Matcher Matcher = pattern.matcher(res);
int i = 0;
while(matcher.find()){
i ++;
System.out.println(matcher.group(i));
}
但是它只输出“part1”
有人可以给我提示吗?
谢谢
最佳答案
可能是一些修复正则表达式
String regexp = "TestString(.*?) with second test (.*)";
并更改println代码..
if (matcher.find())
for (int i = 1; i <= matcher.groupCount(); ++i)
System.out.println(matcher.group(i));