3

我怎么能在 之间找到字符串[[ ]]?搜索答案后,我在下面找到了这种方法,但我找不到 的正则表达式[[ ]],也找不到{{ }}.

我想要做的是找到例如[[abc]]XXXXXXXXXX[[def]]并保存abcdefArrayList。

String s = "[[abc]]XXXXXXXXXX[[def]]";
Pattern p = Pattern.compile("[[(.*?)]]")
Matcher m = p.matcher(s);
if (m.find()) {
    System.out.println(m.group(i)); // => "abc","def"
}
4

1 回答 1

4

您必须双重转义左方括号(您可以对右方括号执行相同操作),因为它们用于定义字符类:

Pattern p = Pattern.compile("\\[\\[(.*?)]]");

(与用于量词的花括号完全相同)

你可以阅读这篇关于方括号不可思议世界的精彩文章。

于 2013-08-18T18:17:02.687 回答