正则表达式PatternSyntaxException错误

时间:2011-10-24 01:29:27

标签: java regex

我不确定为什么以下内容会给我一个PatternSyntaxException

Pattern regex = Pattern.compile("\\[[12|\\[|\\|\\||\\^\\^|\\^|\\_|\\_\\_|\\=|abcdefgABCDEFG|\\|");  

它声称错误位于|a,我并不理解。

2 个答案:

答案 0 :(得分:2)

我没有看到与未转义的匹配']'...

 Pattern regex = Pattern.compile("\\[[12|...
                                     |This one

答案 1 :(得分:0)

非转义管道内的角色是否属于角色范围?因此,它们应该放在方括号内。

[A-Ga-g]

这是一个错误,因为管道符是正则表达式逻辑运算符(或)。