Java 提取带有一些特殊字符的模式

Java 提取带有一些特殊字符的模式,java,regex,Java,Regex,我想提取一个位于两个方括号内的模式。它们通常是这样的:这就是我想要的[Pat1 France]�这是[Pat2 boy-o-boy] 我的正则表达式如下所示: Pattern search = Pattern.compile("\\[[\\w.\\.\\-\\s]+]"); 我如何合并特殊字符,或者我应该在模式中更改什么来提取那些大括号中可能出现的任何字符 我想榨取[法国]�不知怎么的,这是沃尔玛和[帕特男孩-男孩]。我可以提取pat2部分。谢谢你的建议 您可以使用这个正则表达式 \\[.*?

我想提取一个位于两个方括号内的模式。它们通常是这样的:
这就是我想要的[Pat1 France]�这是[Pat2 boy-o-boy]


我的正则表达式如下所示:

Pattern search = Pattern.compile("\\[[\\w.\\.\\-\\s]+]");
我如何合并特殊字符,或者我应该在模式中更改什么来提取那些大括号中可能出现的任何字符

我想榨取[法国]�不知怎么的,这是沃尔玛和[帕特男孩-男孩]。我可以提取pat2部分。谢谢你的建议

您可以使用这个正则表达式

\\[.*?\\]

只需使用与任何字符匹配的

 String s= "[Pat1 France�s Wal-mart ]";
        Pattern p = Pattern.compile("\\[.*?\\]");
        Matcher m = p.matcher(s);
        System.out.println(m.find() + " " + m.group());

您缺少
,否则它会匹配greedily@Some1.Kill.The.DJ是的。。谢谢,我更关心的是输出:P