正则表达式忽略的内容,我想一个String,如拆分为从括号 “字词1和字词2 OR(WORD3 AND(word4 OR的word5))AND word6”与“AND”只能在外面获得:“word1”“word2 OR(word3 AND(word4 OR word5))”“word6”Java的字符串分割在括号
请注意,括号中可以包含许多其他圆括号。
我已经做了一些研究,我找到了一个与我想要的相反的正则表达式:(?:[^AND(]|\([^)]*\))+
这个正则表达式选择除了括号外的所有东西,只是“AND”。我也尝试过向前看,但没有成功。
有没有办法用正则表达式来问我?
感谢
如果你想递归地做到这一点,我不认为这是可能的,因为这将意味着你有为每个表达式找到适当的右括号,但正则表达式不能表达这些括号。 –
应该将分词'word1 AND((word2 AND word3)AND word4)AND word5'作为'word1''((word2 AND word3)AND word4)'word5'的结果,或者也许你想把中间词分成' ((word2 AND word3)'和'word4)'?我问,因为你接受了也分裂中间部分的答案。 – Pshemo
我想要第一个命题:“word1”“((word2 AND word3)AND word4)”“word5” – beetix