我有一个模式@@{}
并给出一个字符串,我需要找出大括号之间的所有字符串。
示例:
如果我的字符串是Hi This is @@{first} and second is @@{second} along with third @@{third} string
我期望的输出是一个由元素组成的字符串数组:
first
second
third
我的Java代码如下:
Pattern p = Pattern.compile("\\@\\@\\{(.+?)\\}");
Matcher match = p.matcher("Hi This is @@{first} and second is @@{second} along" +
"with third @@{third} string");
while(match.find()) {
System.out.println(match.group());
}
但我得到的输出是
@@{first}
@@{second}
@@{third}
请指导我如何获得所需的输出以及我正在做的错误
答案 0 :(得分:7)
将match.group()
更改为match.group(1)
。此外,@
不需要转义。