我正在寻找一个RegEx来返回两个方括号之间的所有字符,只有字符,而不是括号本身。正则表达式返回方括号内的字符(但不包括括号)
例如,给定一个字符串,它看起来像"[A][B2][1,1][ABC]"
正则表达式应该返回:A
,B2
,1,1
,ABC
我已经尝试了两种String#split
和Pattern
& Match
各种表情。
我已经得到的最接近的是:
String.split("[\\[]*[\\]]");
和 Pattern.compile("\\[[^\\]]+(?=])");
这两个回报:[A
,[B2
,[1,1
,[ABC
我发现返回的其他表达式值与括号括起来(即Pattern.compile("\\[[^\\]]*\\]");
),但那不是我所追求的。
有人知道正确的表达方式吗?或者是我试图做不到的事情?
你不需要lookarounds。 – hwnd 2015-03-08 19:07:47
很快!我用'Pattern'测试了两者,并且都与我的测试数据完美配合。 – munyul 2015-03-08 19:08:18
我会,但有一个计时器:p – munyul 2015-03-08 19:09:10