This chapter provided explanations, details, and examples of some of the more challenging tools and concepts in the J2SE regex package. The chapter discussed groups, subgroups, noncapturing groups, greedy qualifiers, positive qualifiers, reluctant qualifiers, positive lookaheads, negative lookaheads, positive lookbehinds, and negative lookbehinds. Finally, the chapter finished with a few tips for optimizing your expressions. The next chapter will introduce some suggestions for working with regular expressions in an object-oriented language such as Java.