我正在使用Java。我有以下文字:
"hyst and hy"
为什么(hy)(?![a-z])会返回两个“hy”。这个想法是匹配a-z之间没有任何字符的任何“hy”。
如果我做 hy(?![az])(没有括号的hy)它可以工作(只找到第二个“hy”)但我不明白为什么我使用括号(hy) )在RegEx中,它匹配hyst中的第一个“hy”
答案 0 :(得分:3)
使用捕获组时,您将获得两个结果,第一个是整个模式,第二个是捕获组。第一个hy
从未匹配。
如果删除括号,则只获得与整个模式匹配的内容。